oci ghcr.io/wyre-technology/salesforce-mcp:v1.0.3stdioupdated 8d ago
MCP (Model Context Protocol) server for Salesforce CRM, scoped to the WYRE Gateway BYOC use case.
O que dá para fazer com Salesforce?
salesforce-mcp
MCP (Model Context Protocol) server for Salesforce CRM, scoped to the WYRE Gateway BYOC use case.
A focused HTTP MCP server that exposes a Salesforce org's CRM data surface to Claude (and other MCP clients) through the WYRE MCP Gateway. Built for the multi-tenant gateway pattern: credentials are injected per-request via HTTP headers, no startup secrets are baked into the container.
Scope discipline
This package intentionally ships a narrow tool surface — six CRM data tools — and deliberately omits the Apex code-management / custom-object-creation / EXECUTE_ANONYMOUS surfaces that broader Salesforce MCP servers include. The use case is read/write access to standard CRM objects (Accounts, Contacts, Opportunities, Leads, Cases). Customers who need DX or admin tooling should use the official @salesforce/mcp package instead.
Tools
| Tool | Purpose |
|---|---|
salesforce_search_objects |
Find standard + custom objects by partial name. |
salesforce_describe_object |
Full schema (fields, picklists, relationships) for an object. |
salesforce_query_records |
Execute SOQL with relationship traversal. |
salesforce_aggregate_query |
SOQL GROUP BY / COUNT / SUM / AVG / MIN / MAX. |
salesforce_dml_records |
Insert / update / delete / upsert records. |
salesforce_search_all |
Cross-object SOSL search. |
Run modes
http(default): listens on:8080, exposes/mcp(JSON-RPC) +/health. Per-request credentials fromX-Salesforce-*headers. This is the gateway deployment shape.stdio: traditional MCP client transport (Claude Desktop / Cursor). Credentials read once from env. Useful for local testing.
# HTTP mode (gateway default)
PORT=8080 MCP_TRANSPORT=http AUTH_MODE=gateway npm start
# stdio mode (env-baked, local testing)
MCP_TRANSPORT=stdio \
SALESFORCE_AUTH_FLOW=client_credentials \
SALESFORCE_CLIENT_ID=... SALESFORCE_CLIENT_SECRET=... \
SALESFORCE_INSTANCE_URL=https://yourorg.my.salesforce.com \
node dist/entry.js
Header contract (gateway mode)
| Header | Required? | Notes |
|---|---|---|
X-Salesforce-Auth-Mode |
optional | client_credentials (default) or username_password. |
X-Salesforce-Client-Id |
for client_credentials | Connected App consumer key. |
X-Salesforce-Client-Secret |
for client_credentials | Connected App consumer secret. |
X-Salesforce-Instance-Url |
for client_credentials | Customer's My Domain URL (e.g. https://acmecorp.my.salesforce.com). |
X-Salesforce-Username |
for username_password | Salesforce user. |
X-Salesforce-Password |
for username_password | Salesforce password. |
X-Salesforce-Token |
for username_password | Security token (required unless IP allowlisted). |
Per-request authentication means the same container instance can service many customers without restart — each MCP tools/call builds a fresh jsforce.Connection from the headers on that request.
Salesforce Connected App setup
For Client Credentials flow (the recommended path):
- Salesforce Setup → App Manager → New Connected App.
- Under API (Enable OAuth Settings): turn on Enable OAuth Settings and Enable Client Credentials Flow.
- Save, wait ~5 minutes for propagation.
- Manage → Edit Policies → Client Credentials Flow → set a Run As user (the API calls run with that user's permissions).
- Copy the Consumer Key and Consumer Secret from the Connected App into the gateway BYOC fields as
clientIdandclientSecret. - Set
instanceUrlto the customer's My Domain URL (Setup → My Domain).
Build
npm install
npm run build
Container
docker build -t salesforce-mcp:dev .
docker run --rm -p 8080:8080 -e MCP_TRANSPORT=http salesforce-mcp:dev
curl -s http://localhost:8080/health
The published image lives at ghcr.io/wyre-ai/salesforce-mcp with :latest, :sha-<short_sha>, and :v<version> tags.
License
Apache-2.0.
Instalação
Adicione Salesforce ao seu cliente. Escolha o que você usa.
claude mcp add ghcr-io-wyre-technology-salesforce-mcp-v -- docker run -i --rm ghcr.io/wyre-technology/salesforce-mcp:v1.0.3codex mcp add ghcr-io-wyre-technology-salesforce-mcp-v -- docker run -i --rm ghcr.io/wyre-technology/salesforce-mcp:v1.0.3amp mcp add ghcr-io-wyre-technology-salesforce-mcp-v -- docker run -i --rm ghcr.io/wyre-technology/salesforce-mcp:v1.0.3{
"mcpServers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"ghcr-io-wyre-technology-salesforce-mcp-v","command":"docker","args":["run","-i","--rm","ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"type": "local",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"ghcr-io-wyre-technology-salesforce-mcp-v": {
"command": {
"path": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/salesforce-mcp:v1.0.3"
]
}
}
}
}Add to your Zed `settings.json`.
docker run -i --rm ghcr.io/wyre-technology/salesforce-mcp:v1.0.3Run `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
6 ferramentas
Salesforce expõe 6 ferramentas a um agente conectado.
- salesforce_search_objects
- Find standard + custom objects by partial name.
- salesforce_describe_object
- Full schema (fields, picklists, relationships) for an object.
- salesforce_query_records
- Execute SOQL with relationship traversal.
- salesforce_aggregate_query
- SOQL GROUP BY / COUNT / SUM / AVG / MIN / MAX.
- salesforce_dml_records
- Insert / update / delete / upsert records.
- salesforce_search_all
- Cross-object SOSL search.
Pontuação
68 / 100
Boa
- Documentação22/25
- Manutenção19/25
- Confiança9/20
- Capacidade6/15
- Instalação12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 1 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 6 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Histórico de versões
| Versões | Publicada |
|---|---|
| 1.0.3Mais recente | 20 de ago. de 2026 |
| 1.0.2 | 19 de jul. de 2026 |