About Agentforce MCP Server
Agentforce MCP Server is an MCP server published by pkurimella in the Developer Tools category: mCP server: Agentforce MCP Server.
The repository has 4 stars and 2 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/pkurimella/agentforce-mcp-serverThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Agentforce MCP Server
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 9 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- !License declaredNo license file. Legally you have no right to use it in a product.
- !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
- !Dependencies pinnedNo lockfile. Installs can pull different code over time.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
README
MCP Architecture with Agentforce

Agentforce MCP Server
This is an MCP (Model Context Protocol) server for Salesforce's Agentforce Service Agent. THe MCP Server uses Agentforce Agent API to communicate with the Agent while exposing the main API interfaces as Tools based on the MCP Protocol.
🧩 MCP Tools Exposed
| Tool Name | Description |
|---|---|
| start-session | Initializes a new Agentforce chat session |
| send-message | Sends a message to the active session |
| end-session | Ends the active session |
🛠️ Requirements
- Node.js 18+
- Salesforce Org with Agentforce and an active Agentforce Service Agent
- Connected App with Client Credentials OAuth2 flow
- MCP-compatible client (e.g. ChatGPT, Open Interpreter, or custom)
📦 Installation
npm install
Or if you're setting up from scratch:
npm install @modelcontextprotocol/sdk axios zod
🔧 Build
npm run build
🔍 Testing
Use an MCP-compatible client (like MCP Inspector) to call tools and verify responses https://modelcontextprotocol.io/docs/tools/inspector.
- Run the command below
npx @modelcontextprotocol/inspector node ./build/server.js \ <SALESFORCE_ORG_DOMAIN_URL > \ <CONNECTEDAPP_CLIENTID> \ <CONNECTEDAPP_CLIENTSECRET> \ <AGENTID> - Navigate to the inspector at http://localhost:5173/ and test your MCP Server
- More info to test MCP Server https://modelcontextprotocol.io/docs/tools/debugging
- More info on setting up and using Agentforce Agent API https://developer.salesforce.com/docs/einstein/genai/guide/agent-api-get-started.html
🛡️ Error Handling
All errors are standardized using a centralized error handler. If something goes wrong (e.g., authentication failure), meaningful messages will be shown.
Claude Desktop Config
The following uses stdio so the mcp server is running locally.
{
"mcpServers": {
"agentforce" : {
"command": "node",
"args": [
"/path/to/directory/build/server.js",
"SALESFORCE_ORG_DOMAIN_URL",
"CONNECTEDAPP_CLIENT_ID",
"CONNECTEDAPP_CLIENT_SECRET",
"AGENT_ID"
]
}
}
}
##💡 Notes
This server uses STDIO transport. If you want to use SSEServerTransport use the sample below
import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
import express from "express";
const app = express();
var transport: SSEServerTransport ;
app.get("/sse", async (req, res) => {
transport = new SSEServerTransport("/messages", res);
await server.connect(transport);
});
app.post("/messages", async (req, res) => {
// Note: to support multiple simultaneous connections, these messages will
// need to be routed to a specific matching transport. (This logic isn't
// implemented here, for simplicity.)
await transport.handlePostMessage(req, res);
});
app.listen(PORT);
README fetched from the repository 9 days ago. The original is authoritative.