关于 Salesforce
Salesforce 是面向团队的本地 stdio MCP 服务,用于将 MCP 主机连接到 Salesforce CRM。它支持标准对象和自定义对象的日常记录操作,也提供搜索、报表和 SOQL 查询。
主要功能
- 01创建、查找和更新 CRM 记录
- 02处理客户、联系人、潜在客户和商机
- 03管理任务、案例、事件和营销活动
- 04跨 CRM 对象搜索
- 05运行报表和 SOQL 查询
- 06查看对象元数据并操作自定义记录
适用场景
- 01在 Salesforce 中查找联系人或客户
- 02创建商机和后续任务
- 03转换并更新潜在客户
- 04搜索 CRM 记录或运行报表
MCP 相关
通过本地 stdio MCP 主机提供 37 个 Salesforce API 工具,涵盖 CRM 记录、搜索、报表、查询和架构。支持 OAuth 或静态访问令牌;写入操作会标记供主机审核。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @mindstone/mcp-server-salesforceSALESFORCE_CLIENT_IDSalesforce Connected App client ID (recommended path)SALESFORCE_CLIENT_SECRET密钥Salesforce Connected App client secret (recommended path)SALESFORCE_SANDBOXSet to true for sandbox environmentsSALESFORCE_ACCESS_TOKEN密钥Static access token (alternative to OAuth)SALESFORCE_INSTANCE_URLSalesforce instance URL (required for manual token mode)SALESFORCE_CONFIG_DIRCustom config directorySALESFORCE_OAUTH_PORT密钥OAuth callback port (0 = OS-assigned)SALESFORCE_OAUTH_SCOPES密钥Space-separated OAuth scopes本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
37收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
@mindstone/mcp-server-salesforce
Salesforce CRM MCP 服务 — 通过 Salesforce API 管理账户、联系人、商机、潜在客户、任务、用户和自定义对象。
当 MCP 宿主需要一个可本地安装并运行的 CRM 连接器来处理日常销售工作,而不是 Salesforce 托管的端点时,本工具最合适。
状态
- 版本: 0.2.3 · npm
- 身份验证: OAuth(本地 127.0.0.1 回调)或静态访问令牌(
SALESFORCE_CLIENT_SECRET、SALESFORCE_ACCESS_TOKEN) - 工具: 37(账户、联系人、商机、潜在客户、任务、案例、活动、搜索、备注、营销活动、报告、查询)
- 类型: cloud-api
- 机器可读:
STATUS.json
为什么要开发这个工具
对于许多团队来说,Salesforce 自带的 MCP 选项是不错的起点。这个软件包适合希望使用标准 npm MCP 服务,并能在任何 stdio 宿主中本地运行的团队。
它让助手能够专注处理人们实际提出的 CRM 工作:查找账户和联系人、更新潜在客户、创建商机和任务、执行 CRM 搜索,以及处理自定义对象。它的优势在于能快速将自然语言销售请求转化为相应的 Salesforce 记录,同时让宿主清楚地看到写入操作。
交互示例
“在 Salesforce 中查找 Acme Corp,创建一个金额为 $75,000 的 Q3 扩展商机,并添加一项下周五的跟进任务。”
宿主调用的工具:
salesforce_get_accounts— 按名称搜索账户,并返回匹配的账户 ID。salesforce_create_opportunity— 为该账户创建商机。salesforce_create_task— 添加一项与新商机相关的跟进任务。
响应(节选):
{
"account": { "id": "001xx000003DGbYAAW", "name": "Acme Corp" },
"opportunity": {
"id": "006xx000004TmiYAAS",
"name": "Q3 expansion",
"amount": 75000,
"stage": "Prospecting"
},
"task": {
"id": "00Txx000006rYxDEAU",
"subject": "Follow up on Q3 expansion"
}
}
要求
- Node.js 20+
- npm
- 用于 OAuth 流程的 Salesforce Connected App,或者有效的访问令牌及实例 URL,以使用手动令牌模式。
一键安装
点击按钮后,宿主将提示你填写:SALESFORCE_CLIENT_ID、SALESFORCE_CLIENT_SECRET、SALESFORCE_ACCESS_TOKEN、SALESFORCE_CONFIG_DIR、SALESFORCE_OAUTH_PORT。
Claude Desktop / Claude Code / Goose / Continue.dev(Salesforce)的手动配置
{
"mcpServers": {
"Salesforce": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-salesforce"
],
"env": {
"SALESFORCE_CLIENT_ID": "",
"SALESFORCE_CLIENT_SECRET": "",
"SALESFORCE_ACCESS_TOKEN": "",
"SALESFORCE_CONFIG_DIR": "~/.mcp/salesforce",
"SALESFORCE_OAUTH_PORT": "0"
}
}
}
}
快速开始
安装和构建
cd <path-to-repo>/connectors/salesforce
npm install
npm run build
npx
npx -y @mindstone/mcp-server-salesforce
本地
node dist/index.js
配置
OAuth(推荐)
设置以下环境变量:
SALESFORCE_CLIENT_ID— Salesforce Connected App 客户端 IDSALESFORCE_CLIENT_SECRET— Salesforce Connected App 客户端密钥SALESFORCE_SANDBOX— 沙盒环境设为"true"(可选)
然后调用 salesforce_connect_account 启动 OAuth 流程。
手动令牌
SALESFORCE_ACCESS_TOKEN— 有效的 Salesforce 访问令牌SALESFORCE_INSTANCE_URL— Salesforce 实例 URL(例如:https://mycompany.my.salesforce.com)
其他选项
SALESFORCE_CONFIG_DIR— 自定义配置目录(默认:~/.mcp/salesforce)SALESFORCE_OAUTH_PORT— OAuth 回调端口(0= 由操作系统分配;默认:0)SALESFORCE_OAUTH_SCOPES— 以空格分隔的 OAuth 作用域。不设置则使用连接器默认值。
可用工具(37 个)
账户管理
salesforce_connect_account— 通过 OAuth 连接 Salesforce 账户salesforce_list_connected_accounts— 列出已连接的账户salesforce_disconnect_account— 断开账户连接
CRM 账户
salesforce_get_accounts— 根据筛选条件获取 CRM 账户salesforce_create_account— 创建 CRM 账户salesforce_update_account— 更新 CRM 账户
联系人
salesforce_get_contacts— 根据筛选条件获取联系人salesforce_create_contact— 创建联系人salesforce_update_contact— 更新联系人
商机
salesforce_get_opportunities— 根据筛选条件获取商机salesforce_create_opportunity— 创建商机salesforce_update_opportunity— 更新商机
潜在客户
salesforce_get_leads— 根据筛选条件获取潜在客户salesforce_create_lead— 创建潜在客户salesforce_convert_lead— 将潜在客户转换为账户和联系人salesforce_update_lead— 更新潜在客户
任务
salesforce_get_tasks— 根据筛选条件获取任务salesforce_create_task— 创建任务salesforce_update_task— 更新任务
案例
salesforce_get_cases— 根据筛选条件获取支持案例salesforce_create_case— 创建支持案例salesforce_update_case— 更新支持案例
活动
salesforce_get_events— 根据筛选条件获取日历活动salesforce_create_event— 创建日历活动
搜索
salesforce_search— 跨对象全文搜索(SOSL);响应中的truncated标记会告知你是否存在超出限制的更多匹配项
备注
salesforce_get_notes— 获取附加到记录的备注salesforce_create_note— 创建备注,可选择将其附加到记录(附加失败时会回滚备注,或报告孤立备注的 ID)
营销活动
salesforce_get_campaigns— 根据筛选条件获取营销活动salesforce_get_campaign_members— 获取营销活动中的潜在客户/联系人
报告
salesforce_run_report— 运行现有的 Salesforce 报告(Analytics REST API)
用户
salesforce_get_users— 获取 Salesforce 用户
查询与架构
salesforce_query— 执行原始 SOQL 查询salesforce_describe_object— 获取对象元数据和字段salesforce_list_objects— 列出可用的 Salesforce 对象
通用 CRUD
salesforce_create_record— 创建任意 Salesforce 记录salesforce_update_record— 更新任意 Salesforce 记录salesforce_get_records— 查询任意 Salesforce 对象
安全说明
- 独立的 OAuth 回调服务绑定到
127.0.0.1;它不会遵循可能导致回调服务暴露给本地回环地址以外范围的环境变量覆盖。 - OAuth 凭据存储在
SALESFORCE_CONFIG_DIR下(默认路径为~/.mcp/salesforce),目录和文件均采用严格的权限设置。 - 写入和断开连接工具已标记,以便具备相应能力的宿主在更改 Salesforce 数据前请求确认。
- SOQL 辅助路径会转义字符串和
LIKE值,在应用查询限制上限前以安全方式去除注释,并将原始 SOQL 查询的记录数限制为最多 200 条。 - 读取工具返回的记录文本会使用
<untrusted-content>封装,以便将 Salesforce 编写的字段值作为数据而非指令呈现给模型。 - 当 Salesforce 在记录级别拒绝转换(例如触发验证规则)时,
salesforce_convert_lead会将转换报告为失败,而不会声称转换成功;组织编写的错误详情也会采用相同方式封装。
许可证
FSL-1.1-MIT — Functional Source License,Version 1.1,未来将采用 MIT 许可证。该软件将于 2030-04-08 转为 MIT 许可证。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。