MCP server URL or name
https://api.salesforce.com/platform/mcp/v1/sandbox/platform/sobject-all
How are you connecting to this server?
From a custom connector URL I entered manually
Where does the issue occur?
After completing OAuth — token issued by Salesforce, MCP handshake fails.
When did you last reproduce this?
2026-05-01
Browser and OS
Chrome on macOS Darwin 24.6.0 (Sonoma); also reproducible in Claude Desktop on the same machine.
Describe the issue
OAuth handshake completes successfully — Salesforce issues the token and the
External Client App's OAuth Usage page shows the connection. Claude then
fails with "Authorization with the MCP server failed" when attempting the
post-auth MCP handshake.
The error redirect exposes the underlying cause:
?oauth_error_detail=The+MCP+server+returned+a+405+status+code+error.
This is consistent with Anthropic's hosted-MCP broker probing `GET /mcp`,
getting back a spec-compliant HTTP 405, and treating it as fatal. Per the
MCP Streamable HTTP spec, servers MUST respond to `GET` with either
`text/event-stream` or `405 Method Not Allowed` — Salesforce's choice of
405 is spec-compliant.
Critical evidence this is broker-side, not config: the same External
Client App, same Consumer Key, same MCP server URL connects and works
perfectly via Claude Code CLI (native HTTP transport, no pre-flight `GET`
probe). It only fails through the Anthropic broker used by claude.ai web
and Claude Desktop.
Same pattern reported in #171, #184, #198, #246.
Error details
```
Authorization with the MCP server failed. You can check your credentials
and permissions. If this persists, share this reference with support:
ofid_ff0162a6df842c68
```
Additional ofid from a separate retry: `ofid_301cdeb948d766b2`
Redirect URL after the failure:
https://claude.ai/customize/connectors?oauth_error_detail=The+MCP+server+returned+a+405+status+code+error.
Expected behavior
Broker should accept `HTTP 405` on `GET /mcp` as spec-compliant and proceed
to `POST` message exchange — same path Claude Code takes successfully.
Additional context
External Client App configuration matches the canonical Salesforce
doc: https://developer.salesforce.com/docs/platform/hosted-mcp-servers/guide/create-external-client-app.html
`sobject-all` MCP server is activated in Setup. Already tried the
deactivate→reactivate workaround from #171 — no change.
Same ECA + Consumer Key works in Claude Code CLI against the same MCP
server URL, both today.
Salesforce-side context: forcedotcom/mcp-hosted#12, where @rossbelmont
noted Salesforce is "working with Anthropic on a Claude-specific issue."
MCP server URL or name
https://api.salesforce.com/platform/mcp/v1/sandbox/platform/sobject-all
How are you connecting to this server?
From a custom connector URL I entered manually
Where does the issue occur?
After completing OAuth — token issued by Salesforce, MCP handshake fails.
When did you last reproduce this?
2026-05-01
Browser and OS
Chrome on macOS Darwin 24.6.0 (Sonoma); also reproducible in Claude Desktop on the same machine.
Describe the issue
OAuth handshake completes successfully — Salesforce issues the token and the
External Client App's OAuth Usage page shows the connection. Claude then
fails with "Authorization with the MCP server failed" when attempting the
post-auth MCP handshake.
The error redirect exposes the underlying cause:
?oauth_error_detail=The+MCP+server+returned+a+405+status+code+error.This is consistent with Anthropic's hosted-MCP broker probing `GET /mcp`,
getting back a spec-compliant HTTP 405, and treating it as fatal. Per the
MCP Streamable HTTP spec, servers MUST respond to `GET` with either
`text/event-stream` or `405 Method Not Allowed` — Salesforce's choice of
405 is spec-compliant.
Critical evidence this is broker-side, not config: the same External
Client App, same Consumer Key, same MCP server URL connects and works
perfectly via Claude Code CLI (native HTTP transport, no pre-flight `GET`
probe). It only fails through the Anthropic broker used by claude.ai web
and Claude Desktop.
Same pattern reported in #171, #184, #198, #246.
Error details
```
Authorization with the MCP server failed. You can check your credentials
and permissions. If this persists, share this reference with support:
ofid_ff0162a6df842c68
```
Additional ofid from a separate retry: `ofid_301cdeb948d766b2`
Redirect URL after the failure:
https://claude.ai/customize/connectors?oauth_error_detail=The+MCP+server+returned+a+405+status+code+error.
Expected behavior
Broker should accept `HTTP 405` on `GET /mcp` as spec-compliant and proceed
to `POST` message exchange — same path Claude Code takes successfully.
Additional context
External Client App configuration matches the canonical Salesforce
doc: https://developer.salesforce.com/docs/platform/hosted-mcp-servers/guide/create-external-client-app.html
`sobject-all` MCP server is activated in Setup. Already tried the
deactivate→reactivate workaround from #171 — no change.
Same ECA + Consumer Key works in Claude Code CLI against the same MCP
server URL, both today.
Salesforce-side context: forcedotcom/mcp-hosted#12, where @rossbelmont
noted Salesforce is "working with Anthropic on a Claude-specific issue."