Day 4/15 — Enable & Configure the Salesforce MCP Server
Salesforce runs MCP servers for your org, but they are all off until an admin switches them on. Today you find them in Setup, activate the read-only sobject-reads server and sobject-all, copy the right URLs, and write down what your org exposes.

Arjun has read three days of theory and now he wants to see something in his org. Neha has a call coming up with Acme Global Tech's VP of Sales, and she has asked whether Claude can help her prepare. Before anyone connects anything, Arjun has to answer a more basic question: which Model Context Protocol (MCP) servers does Salesforce already run for his org, which ones are switched on, and which one should be the first?
The answer to the second question is short: none of them are on. Salesforce hosts the servers, maintains them and enforces permissions on every call, but it leaves the decision to switch each one on with you. That is a good default, and today you make that decision on purpose.
A quick recap. On Day 2 you followed a request through the layers of Salesforce Headless 360 (now called AIforce), and on Day 3 you built a small MCP server of your own and watched its messages. Today we move from your laptop to Salesforce's servers.
By the end of today you will have activated the read-only sobject-reads server and sobject-all in your Developer Edition org, copied their Server URLs, and written a server inventory that says what your org exposes and why.
What Salesforce runs for you
Salesforce's GA announcement defines the product: "A hosted MCP server is a Salesforce-managed endpoint that exposes your org's logic and assets — data, flows, Apex actions, queries, and more — to any AI client that speaks MCP. Salesforce handles hosting, authentication, and permission enforcement automatically." The servers became generally available on April 29, 2026, "across every Enterprise Edition org and above", after "a pilot last spring and beta last October".
There are two kinds:
- Standard servers. "These servers are pre-configured by Salesforce and provide a fixed set of tools. Standard servers are disabled by default and can be enabled by an administrator, but their tool sets cannot be modified."
- Custom servers. Servers an admin assembles from standard tools plus your own Apex actions, Flows and API Catalog endpoints. We build one on Day 12.
Today is about the standard servers. The four SObject servers are the ones this series uses:
| Server | What Salesforce says it does | Tools | Status |
|---|---|---|---|
platform/sobject-reads |
"provides read-only access to standard and custom objects ... No data changes are possible through this server." | 6: getObjectSchema, soqlQuery, find, getUserInfo, listRecentSobjectRecords, getRelatedRecords |
GA |
platform/sobject-all |
"the full-capability SObject server", covering "create, read, update, delete, query, search, and relationship traversal" | 11: the six reads plus createSobjectRecord, updateSobjectRecord, updateRelatedRecord, deleteSobjectRecord, deleteRelatedRecord |
GA |
platform/sobject-mutations |
"allows AI agents to create and update Salesforce records, but not delete them" | 6: getObjectSchema, soqlQuery, find, createSobjectRecord, updateSobjectRecord, updateRelatedRecord |
GA |
platform/sobject-deletes |
"combines delete operations with schema discovery and query tools ... while excluding create and update" | 5: getObjectSchema, soqlQuery, find, deleteSobjectRecord, deleteRelatedRecord |
GA |
The reference also lists product-specific servers. You don't need them for this series, but you will see them in Setup, so it helps to know what they are:
| Server | What it is for | Worth knowing |
|---|---|---|
platform/headless-360 |
The Headless 360 MCP Server: a handful of tools (five in my org) in front of a growing library of operations | Beta since July 2026. Days 7 and 13 |
data/data360 |
Data 360's Connect API through MCP | Generally available since August 2026 |
data/data-cloud-queries |
Data 360 Legacy: SQL over Data 360 objects | Legacy |
platform/content-readonly, platform/content-write |
CMS content | Agentforce Vibes is currently the only supported client; non-production orgs |
platform/backup-and-recover |
Backup and Recover | Needs the Backup and Recover add-on licenses |
analytics/tableau-next |
Tableau Next's semantic layer and analytics | |
analytics/crma-beta |
Read-only access to CRM Analytics | Beta |
Salesforce's Headless 360 workshop also activates two servers that aren't on the reference page, salesforce-api-context and metadata-experts, from the same tab. If your list includes them, note them in your inventory. Salesforce's Claude Code plugin brings servers with similar names on Day 12; today we leave them off.
One more fact to keep in mind while you look at this list: there is no language model behind any of these servers. Salesforce's FAQ says the processing is "completely deterministic". A server receives a structured tool call, runs it as the user, and returns data.
Before you start
Your org. Salesforce's wiki says "Hosted MCP servers require Enterprise Edition or above" and "Developer Edition orgs can also use MCP servers." Salesforce Help lists the MCP Servers page as available in Developer, Enterprise, Performance and Unlimited Editions. "For eligible orgs, MCP server capability is auto-enabled." If your org should be eligible and the page isn't there, the wiki's advice is to ask Salesforce Support to enable the MCPService permission for your org. For this series, use the Developer Edition org you set up on Day 1: every Developer Edition org includes Salesforce Hosted MCP Servers "at no cost."
Your permissions. Activating a server is an administrative action. Salesforce says servers "are disabled by default and require explicit administrative action to enable." In a Developer Edition org you are the System Administrator, so you can do it.
Your test user. This matters more than it looks. Every hosted MCP call runs as the user who signed in, with that user's object permissions, field-level security and sharing. If you only ever test as a System Administrator, every test passes, because an administrator can see almost everything. Activate servers as the admin, but plan to test later as a user whose access matches the people who will use Claude, such as Neha. Day 11 builds the permission set for that user.
Your time. Salesforce's shortest path from nothing to a working client "takes less than 30 minutes": enable a server, create an External Client App, connect a client. Today is the first of those three steps.
Hands-on: activate your first servers
The Salesforce docs describe the path to this page in slightly different words, so I give the documented path first and the alternative after it. If the labels in your org differ, trust your screen and note what you see.

Step 1: open the MCP Servers page
Setup → Quick Find "MCP Servers" → MCP Servers (under API Catalog).
If Quick Find shows nothing, Salesforce Help describes the other route: Setup → Quick Find "API Catalog" → MCP Servers.
Step 2: open the Salesforce Servers tab
Click Salesforce Servers. Salesforce Help: "To view standard and custom Salesforce hosted MCP servers, select Salesforce Servers. To view MCP servers from MuleSoft and other external sources, select External Servers." Take a screenshot of the full list with each server's status. You will want it for your inventory, and it records what your org offered on this date.
For comparison, this is what the tab showed on 2026-10-03 in my Developer Edition org: 9 servers, every one of them inactive. By display name: SObject Reads, SObject All, SObject Mutations, SObject Deletes, Headless360 (H360) MCP Server, salesforce-api-context, metadata-experts, Data Cloud SQL and engagement-interaction. Note that the list shows display names such as SObject Reads, not the API names such as platform/sobject-reads. Your list may be longer or shorter, depending on your org's products and licenses.

Step 3: activate sobject-reads first
Open sobject-reads (listed as SObject Reads) and click Activate (label may differ in your org: Salesforce's developer docs describe "toggling them on", while Help and the workshop say to click Activate). Salesforce's advice for a first server is direct: "If you're not sure where to begin, try the platform/sobject-reads server in a sandbox. It's read-only, risk-free, and immediately useful." A Developer Edition org serves the same purpose.
"It can take up to 2 minutes for a server to become active after you enable it." Use the time to read the server's detail page.
Step 4: activate sobject-all
Go back to the Salesforce Servers tab, open sobject-all (SObject All) and activate it the same way. We need it from Day 6, when Claude's first connector uses it, and on Day 9, when we write data with a confirmation step. Having it active doesn't mean every client uses it: Days 7 and 11 are about pointing each client at the smallest server that does its job.

Step 5: copy both Server URLs
Open each active server and copy its Server URL. Salesforce's May 2026 guide to connecting Claude says to copy "the server's API Name ... and the Server URL" from this page, and it is the safest habit: never type these by hand. For a Developer Edition or production org, the standard URLs look like this:
https://api.salesforce.com/platform/mcp/v1/platform/sobject-reads
https://api.salesforce.com/platform/mcp/v1/platform/sobject-all
Also note each server's API name. On Day 6 we follow the naming convention in Salesforce's Claude Code instructions, "salesforce- followed by the API name of the MCP server", for example salesforce-sobject-reads.
Which URL is right for your org
Hosted servers have more than one URL form, and picking the wrong one is an easy way to fail on Day 6. Salesforce's wiki lists these patterns, where {servername} is the API name, such as platform/sobject-reads:
Developer Edition orgs:
https://api.salesforce.com/platform/mcp/v1/{servername}
https://api.salesforce.com/platform/mcp/v1/d/{mydomainname}/develop/{servername}
Sandbox orgs:
https://api.salesforce.com/platform/mcp/v1/sandbox/{servername}
https://api.salesforce.com/platform/mcp/v1/d/{mydomainname}--{sandboxname}/sandbox/{servername}
Scratch orgs:
https://api.salesforce.com/platform/mcp/v1/sandbox/{servername}
https://api.salesforce.com/platform/mcp/v1/d/{mydomainname}/scratch/{servername}
Production orgs (all other):
https://api.salesforce.com/platform/mcp/v1/{servername}
https://api.salesforce.com/platform/mcp/v1/d/{mydomainname}/{servername}
Each org type has a standard form and a My Domain form with /d/<your domain>/ in the path. The wiki says "The My Domain URL option (the /d/ variant) is recommended for all orgs and required for orgs that have disabled login from login.salesforce.com or test.salesforce.com." So for a Developer Edition org, the My Domain form of the read-only server is https://api.salesforce.com/platform/mcp/v1/d/<YOUR_MY_DOMAIN>/develop/platform/sobject-reads.
Which should you use? If your org still allows login through login.salesforce.com, the standard URL works, and it is what most Salesforce examples show. If your org has turned that login off, you need the /d/ form. Don't expect Setup to hand it to you: in my Developer Edition org on 2026-10-03, both servers showed only the standard URLs above, and no /d/ form was offered. If you need it, build it from the wiki's pattern and your My Domain name, and write down both.
Choosing servers: read-only first
The server you connect decides the most a client can do, before permissions narrow it further. Salesforce's security guidance lists "Read-only servers" first among its incremental permission strategies, alongside Named Queries, custom tools with embedded logic, and External Client App restrictions.
My rule for Acme:
| Job | Server | Why |
|---|---|---|
| Neha asks about accounts, deals and cases | sobject-reads |
Six read tools; no way to create, update or delete |
| Neha asks Claude to log a follow-up task (Day 9) | sobject-all, with approval before each write |
Needs createSobjectRecord; the client asks before running it |
| A clean-up job that deletes duplicates | Not an AI client at all, until Day 11's review | Deletes deserve their own design |
| Anything that needs business rules | A custom server (Day 12) | Your Apex decides what is allowed, not the model |
Two facts keep this rule honest. First, server choice is not a security boundary on its own: "You cannot restrict access to a specific MCP server through the ECA configuration, but you control access to the tools that compose those servers." A user who can sign in to your External Client App can reach any active server; what they can do there is set by their permissions. Second, tool annotations such as read-only are useful but "Annotations are hints, not enforcement." Permissions are enforcement.
There is also a practical reason to keep the list short. Salesforce's custom-server guide warns that "Beyond a few dozen tools, an AI client struggles to select the right one for a given task." Every extra server you connect adds tools to that choice.
Verify it, and write your server inventory
Full verification happens on Day 6, when Claude signs in and lists the tools. You can't call a hosted server without an External Client App, which is tomorrow's job. Today, check three things.
- Status. On the Salesforce Servers tab, both servers show as active. If a client tries to connect within the first two minutes, it may fail; wait and retry.
- URL shape. Each URL starts with
https://api.salesforce.com/platform/mcp/v1/, contains/sandbox/only if you are in a sandbox or scratch org, and ends with the server's API name. - The public metadata. Run the check from Day 1 against your read-only server:
curl https://api.salesforce.com/.well-known/oauth-protected-resource/platform/mcp/v1/platform/sobject-reads
You should see the same shape as on Day 1: resource is the sobject-reads URL, authorization_servers says where users sign in, and scopes_supported lists mcp_api and refresh_token. Be clear about what this proves. The metadata answers without a login and without knowing your org, and it answers for any server name, even a misspelled one. So it confirms the login host and scopes, not that the URL names a real server or that your org's server is active. Activation is confirmed in Setup today and by a working connection on Day 6.
Your server inventory
Now write down what your org exposes. This table is the document you will keep updating for the rest of the series, and it is the first thing a security reviewer will ask for. Here is Acme's, as of today:
| Server | Status | Server URL (copied from Setup) | Who uses it | Reads or writes | Decision |
|---|---|---|---|---|---|
platform/sobject-reads |
Active | https://api.salesforce.com/platform/mcp/v1/platform/sobject-reads |
Claude Code (Day 6), read-only questions | Reads only | Keep active |
platform/sobject-all |
Active | https://api.salesforce.com/platform/mcp/v1/platform/sobject-all |
claude.ai connector (Day 6), writes with approval (Day 9) | Reads and writes | Keep active; review on Day 11 |
platform/headless-360 |
Inactive | (copy when activated) | Read-only exploration on Day 7 | Both, beta | Activate on Day 7 |
| All other servers | Inactive | Nobody | Leave off |
Add a row for anything unexpected in your list, with the date you checked. When you deactivate a server later, record that too. Salesforce Help describes it: "To deactivate an MCP server, select an active server that isn't in use, and then click Deactivate."
Keep the screenshots
Save a screenshot of the server list and of each active server's detail page with its URL. Salesforce's own documents describe this area with different labels, and a dated screenshot settles "was it like this last month?" in seconds.
What can go wrong
These are the problems I would expect on a first activation, and where each one comes from.
| Symptom | Cause | Fix |
|---|---|---|
| Quick Find "MCP Servers" finds nothing | The page is reached differently in your org, or the org isn't eligible | Try Quick Find "API Catalog" → MCP Servers. Check the edition: Developer, Enterprise, Performance or Unlimited. If it should be eligible, ask Support to enable MCPService |
| A server from this article isn't in your list | Not every server appears in every org; product servers depend on products and licenses | Record what you see. This series needs only the SObject servers until Day 7 |
| The client can't reach the server right after you activate it | Activation can take up to 2 minutes, or the URL is wrong | Wait two minutes. Copy the URL from Setup again; check /sandbox/ matches your org type |
| A tutorial's URL or token doesn't work | It dates from the beta: GA moved the URL off the "versioned URL path (v1-beta.2)" and "tokens issued during beta are not valid for the GA service" | Use the URL from Setup and sign in again after Day 5 |
| Users are sent to the wrong login page or can't log in | Your org has disabled login through login.salesforce.com |
Use the /d/<your domain>/ form of the URL |
| A read-only assistant offers to update records | It is connected to sobject-all |
Connect sobject-reads for question-answering clients |
Security note: activation is a decision, not a default
Each active server adds to what any signed-in client can reach. Treat activation like granting a permission set: know who needs it, write it in the inventory, and deactivate what nobody uses. The other controls come on the next days: the External Client App decides who may sign in (Day 5), the client decides which tools run without asking (Days 6 and 9), and permission sets decide what those tools can touch (Day 11). Also keep an eye on cost. Salesforce's wiki says "MCP tool calls consume API calls against your org's daily API quota", and outside Developer Edition its documentation says hosted MCP servers "are intended only for customers with Flex Credits and you may be billed for server usage."
Today's checklist
- I found the MCP Servers page and the Salesforce Servers tab in my org.
-
sobject-readsis active. -
sobject-allis active. - I copied both Server URLs from Setup and noted the API names.
- I know whether my org needs the
/d/<my domain>/form of the URL. - I ran the metadata check against
sobject-readsand know what it does and doesn't prove. - My server inventory lists every server, its status and a decision.
- I have screenshots of the server list and each active server's URL.
Frequently asked questions
Can I use Salesforce hosted MCP servers in a Developer Edition org?
Yes. Salesforce's April 2026 Developer Edition announcement says every Developer Edition org includes Salesforce Hosted MCP Servers at no cost, and the wiki confirms that Developer Edition orgs can use them. Production use requires Enterprise Edition or above.
Do I have to activate every server?
No. Standard servers are disabled by default and an admin activates each one. Activate only what a client needs. For this series that is sobject-reads and sobject-all now, and the beta Headless 360 server later.
What is the difference between sobject-reads and sobject-all?
sobject-reads has six read tools and, in Salesforce's words, "No data changes are possible through this server." sobject-all has eleven tools and adds create, update and delete. Start with sobject-reads, as Salesforce recommends.
Can I change the tools on a standard server?
No. Standard servers have fixed tool sets that "cannot be modified." To combine tools or add your own logic, create a custom server that mixes standard tools with Apex actions and Flows. Day 12 builds one.
Is this the same as the Salesforce DX MCP Server?
No. The DX MCP Server runs on your machine with Salesforce CLI credentials and has development tools for metadata, Apex tests and LWC. Hosted MCP servers run on Salesforce infrastructure, use OAuth for each user, and work with your org's records and actions.
Does activating a server cost anything?
Not in a Developer Edition org. For production orgs, Salesforce says hosted MCP servers are intended for customers with Flex Credits and usage may be billed, and a September 2026 knowledge article describes a new billing model targeted for November. Tool calls also count against your daily API quota.
What's next
Your servers are on, but nobody can use them yet: a hosted server only answers requests that carry a token for a signed-in user. Tomorrow, on Day 5, Arjun creates the External Client App that issues those tokens, with the mcp_api and refresh_token scopes, PKCE and JWT access tokens, and we build a small PKCE helper in TypeScript that we will reuse on Day 15.
Sources
Verified against the sources below on September 30, 2026. Salesforce ships Headless 360 changes often: check the linked docs if a screen looks different.
- Activate MCP Servers (Salesforce Hosted MCP Servers)
- Standard MCP Servers Reference
- Salesforce Hosted MCP Servers Are Now Generally Available — GA announcement, April 29, 2026
- Activate Standard Salesforce MCP Servers in API Catalog (Salesforce Help)
- Headless 360 Workshop: Enable and connect
- Confirming Availability (forcedotcom/mcp-hosted wiki)
- Connecting Your MCP Client (forcedotcom/mcp-hosted wiki) — My Domain URL variants
Everything from today on one page. Tap to zoom, or download it for later.
All 15 days in this series
- Day 01What Is Salesforce Headless 360 and Why Does It Matter?
- Day 02Headless 360 Architecture Explained
- Day 03MCP Fundamentals: Client, Server, Tools & Resources
- Day 04Enable & Configure the Salesforce MCP Server




Comments
Loading comments...