Guide, checked by hand on
How to connect Salesforce to Claude
Read and update your Salesforce records through Salesforce's own hosted MCP servers, set up by your Salesforce admin.
The address
https://api.salesforce.com/platform/mcp/v1/platform/headless-360- Made by
- Salesforce
- Sign-in
- OAuth with your org's own client (an External Client App your admin creates)
- Transport
- Streamable HTTP
For a sandbox org the address is https://api.salesforce.com/platform/mcp/v1/sandbox/platform/headless-360 and sign-in goes to https://test.salesforce.com. In Claude Code, run /mcp after adding it to sign in; the port in --callback-port must match the callback http://localhost:PORT/callback registered in the External Client App, or Salesforce refuses the sign-in. A new External Client App can take a few minutes before its client ID works.
What it can do
- Search and read accounts, contacts, opportunities, leads and cases
- Create and update records within the permissions of your Salesforce user
- Use the tools the activated server exposes
How to add Salesforce to Claude
Salesforce's hosted MCP servers do not register themselves with Claude, so an admin prepares the org first. In Salesforce Setup, turn on Enable MCP Service, then activate the server under API Catalog > MCP Servers > Salesforce Servers (they start inactive). Create an External Client App with: the OAuth scopes mcp_api and refresh_token; PKCE required; access tokens issued as JSON Web Tokens (JWT); an OAuth policy that lets users self-authorize; and the callback URL of each client that will connect: https://claude.ai/api/mcp/auth_callback for Claude on the web and phone, http://127.0.0.1:53280/callback for Claude Desktop, and http://localhost:8080/callback for Claude Code (any free port, the same one as in the command below). Then in Claude: Customize > Connectors, + Add, Add custom connector, paste the address, choose Use your own OAuth client and enter the app's Consumer Key as the client ID. On Team and Enterprise plans an owner adds it under Organization settings > Connectors. Claude Desktop for organisations also has a Salesforce plugin that uses the same server.
How to add it to ChatGPT
ChatGPT can connect the same server as a custom app if your workspace allows custom apps and your admin registers ChatGPT's callback in the External Client App. Check with your Salesforce admin first.
Claude Code
claude mcp add --transport http --client-id YOUR_CONSUMER_KEY --callback-port 8080 salesforce https://api.salesforce.com/platform/mcp/v1/platform/headless-360
Try asking
- "Which of my open opportunities close this month?"
- "Log a call on the Acme account: they want a demo on Friday."
Good to know
- Classic Connected Apps do not work for this; it has to be an External Client App.
- If you see INVALID_JWT_FORMAT, JWT access tokens are not on in the app.
- Check with Salesforce before you use it on Government Cloud.