jogcruz
服务介绍
Salesforce MCP 集成
该项目提供了一个用于 Salesforce 集成的 Model Context Protocol (MCP) 服务器,允许您通过标准化接口执行 SOQL 查询、检索元数据以及与 Salesforce 数据进行交互。
功能
- 使用环境变量连接到 Salesforce 组织
- 对 Salesforce 数据执行 SOQL 查询
- 检索和处理 Salesforce 记录和元数据
- 列出和管理 Salesforce 流
- 使用环境变量进行安全凭据管理
前提条件
- Node.js(v14 或更高版本)
- npm(Node 包管理器)
- 具有 API 访问权限的 Salesforce 组织
- Salesforce 凭据(用户名和密码)
安装
-
克隆此仓库:
git clone
cd -
安装依赖项:
npm install
-
在根目录中创建一个
.env文件,并在其中填写您的 Salesforce 凭据和 API 版本:SF_LOGIN_URL=https://your-instance.salesforce.com/
SF_USERNAME=your_username
SF_PASSWORD=your_password
SF_API_VERSION=58.0- 对于沙盒环境,请使用
https://test.salesforce.com/作为登录 URL。 SF_API_VERSION变量控制集成使用的 Salesforce API 版本。根据需要更新它以适应您的组织。
- 对于沙盒环境,请使用
使用
启动 MCP 服务器
使用 Node.js 运行服务器:
node server.js
服务器将使用 .env 文件中的凭据连接到 Salesforce 并开始监听 MCP 请求。
执行 SOQL 查询
一旦服务器运行起来,您可以通过 MCP 接口执行 SOQL 查询。服务器提供了一个 soqlQuery 工具,该工具接受 SOQL 查询并返回结果。
示例 SOQL 查询:
sql
SELECT Id, Name, Status FROM Account LIMIT 5
列出 Salesforce 流
您可以使用 retrieveMetadata 工具和 Flow 元数据类型列出您的 Salesforce 组织中的所有流。这将返回所有可用的流及其元数据。
在 Cursor 中配置 mcpServers
要将此 Salesforce MCP 服务器与 Cursor 一起使用,请在 Cursor 的 mcp.json 文件中添加以下配置:
"mcpServers": {
"mcp-salesforce": {
"command": "node /absolute/path/to/your/project/root/server.js",
"transport": "stdio",
"args": []
}
}
- 将
/absolute/path/to/your/project/root/server.js替换为您的server.js文件的绝对路径。 - 确保从正确的目录启动服务器,以便它可以找到
.env文件和依赖项。
在 mcp.json 中添加此配置后,您可以从 Cursor 内部连接到 Salesforce MCP 服务器并使用所有可用工具。
项目结构
server.js- 主 MCP 服务器实现和 Salesforce 连接设置tools.js- 所有 MCP 工具定义(SOQL、元数据、流等).env- Salesforce 凭据和 API 版本的环境变量package.json- 项目依赖项和脚本
安全注意事项
- 永远不要将
.env文件提交到版本控制系统 - 将
.env添加到您的.gitignore文件中 - 对所有敏感信息使用环境变量
- 考虑在生产环境中使用更安全的身份验证方法
故障排除
连接问题
如果您遇到连接问题:
- 验证
.env文件中的 Salesforce 凭据 - 检查您的 Salesforce 组织是否可访问
- 确保您的 IP 地址已在 Salesforce 中列入白名单(如果需要)
- 验证您的 Salesforce 用户是否有 API 访问权限
查询错误
如果您的 SOQL 查询失败:
- 检查 SOQL 语法
- 验证对象和字段是否存在于您的组织中
- 确保您的用户有权访问这些对象和字段
许可证
贡献
欢迎贡献!请随时提交 Pull Request。