
Salesforce
io.github.WYRE-AI由 GitHub 账号 WYRE-AI 发布v1.0.7更新于 Oct 24, 2026
MCP server for Salesforce CRM — Accounts, Contacts, Opportunities, Leads, Cases.
概览
面向 Salesforce CRM 的窄范围 MCP 服务器,让助手搜索对象、执行 SOQL/SOSL 查询,并读写客户、联系人、商机、潜在客户和个案。
- 可以做什么
- 按部分名称查找标准与自定义对象,并查看对象的字段、选项列表和关系
- 执行带关系遍历的 SOQL 查询,以及使用 GROUP BY、COUNT、SUM、AVG、MIN、MAX 的聚合查询
- 通过 SOSL 跨对象搜索
- 对标准 CRM 对象插入、更新、删除和 upsert 记录
- 适用场景
- 当助手需要读写 Salesforce 标准 CRM 记录(查询并更新客户、联系人、商机、潜在客户或个案),且不需要更广泛 Salesforce 服务器提供的 Apex、自定义对象或匿名执行能力时使用。
- 运行要求
- 以本地进程(stdio)或监听 8080 端口的 HTTP 容器运行。需要 Salesforce 组织和 Connected App:客户端凭证流程需 SALESFORCE_CLIENT_ID、SALESFORCE_CLIENT_SECRET 和 SALESFORCE_INSTANCE_URL;用户名密码流程需 SALESFORCE_USERNAME、SALESFORCE_PASSWORD 和 SALESFORCE_TOKEN。HTTP 模式还需 CONDUIT_S2S_SECRET,网关模式下每个请求需带 X-Salesforce-* 请求头。
安装
在 SourceWeft 中
- 打开 控制台中的 Salesforce,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
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
Run modes
http(default): listens on:8080, exposes/mcp(JSON-RPC) +/health. Per-request credentials fromX-Salesforce-*headers. This is the gateway deployment shape. HTTP refuses to start unlessCONDUIT_S2S_SECRETis a real secret.stdio: traditional MCP client transport (Claude Desktop / Cursor). Credentials read once from env. The stdio transport does not useCONDUIT_S2S_SECRET.
Copy .env.example and set the variables below. Leave CONDUIT_S2S_SECRET empty in that file.
/health stays unauthenticated and does not read credentials.
Header contract (gateway mode)
Every /mcp request must include a valid X-Gateway-S2S header when CONDUIT_S2S_SECRET is set. Gateway mode also requires the credential headers for the chosen flow. A request missing them returns 401 and does not fall back to SALESFORCE_* in the process environment.
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.
X-Gateway-S2S signing
v1 is HMAC-SHA256, hex-encoded, of the ASCII string t=<unix seconds> (the same t= prefix that starts the header), keyed with CONDUIT_S2S_SECRET. The timestamp must be within 300 seconds of the server clock. A missing or invalid header returns HTTP 401. The secret is never written to logs or the response body.
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
Container
The image listens on 0.0.0.0 inside the container (MCP_HTTP_HOST) and defaults to AUTH_MODE=gateway. Publish the port on loopback and pass the S2S secret. In gateway mode, Salesforce credentials arrive on each request as headers; they are not read from the environment.
Compose refuses to start when CONDUIT_S2S_SECRET is unset, sets AUTH_MODE=gateway, publishes 127.0.0.1:8080:8080, and does not inject SALESFORCE_*:
Single-tenant HTTP (AUTH_MODE=env) still requires the S2S secret, then uses SALESFORCE_*:
The published image lives at ghcr.io/wyre-ai/salesforce-mcp with :latest, :sha-<short_sha>, and :v<version> tags.
License
Apache-2.0.
来源:README.md,提交 a2a8ebb
工具
0版本历史
4- v1.0.7最新Oct 20, 2026
- v1.0.6Oct 17, 2026
- v1.0.5Sep 21, 2026
- v1.0.4Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。