Salesforce MCP集成服务

该项目提供了一个用于Salesforce集成的模型上下文协议(MCP)服务器,允许通过标准化接口执行SOQL查询、检索元数据并与Salesforce数据进行交互。

  • by jogcruz
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 jogcruz/mcp_salesforce

使用说明

Salesforce MCP集成

该项目为Salesforce集成提供了一个模型上下文协议(MCP)服务器,允许您执行SOQL查询、检索元数据,并通过标准化接口与Salesforce数据交互。

特性

  • 使用环境变量连接到Salesforce组织
  • 对Salesforce数据执行SOQL查询
  • 检索和处理Salesforce记录和元数据
  • 列出并管理Salesforce流程
  • 使用环境变量进行安全凭据管理

先决条件

  • Node.js(v14或更高版本)
  • npm(节点包管理器)
  • 具有API访问权限的Salesforce组织
  • Salesforce凭据(用户名和密码)

安装

  1. 克隆此存储库:

    git clone <repository-url>
    cd <repository-directory>
    
  2. 安装依赖项:

    npm install
    
  3. 创建一个 .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

服务器将使用您的帐户中的凭据连接到Salesforce .env 文件并开始监听MCP请求。

执行SOQL查询

服务器运行后,您可以通过MCP接口执行SOQL查询。服务器提供 soqlQuery 接受SOQL查询并返回结果的工具。

SOQL查询示例:

SELECT Id, Name, Status FROM Account LIMIT 5

列出Salesforce流程

您可以使用以下命令列出Salesforce组织中的所有流程 retrieveMetadata 工具与 Flow 元数据类型。这将返回所有可用流及其元数据。

在Cursor中配置mcpServers

要将此Salesforce MCP服务器与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 文件
  • 对所有敏感信息使用环境变量
  • 考虑在生产环境中使用更安全的身份验证方法

故障排除

连接问题

如果您遇到连接问题:

  1. 在中验证您的Salesforce凭据 .env 文件
  2. 检查您的Salesforce组织是否可访问
  3. 确保您的IP地址在Salesforce中列入白名单(如果需要)
  4. 验证您的Salesforce用户是否具有API访问权限

查询错误

如果您的SOQL查询失败:

  1. 检查SOQL语法
  2. 验证对象和字段是否存在于您的组织中
  3. 确保您的用户有权访问对象和字段

许可证

MIT许可证

贡献

欢迎投稿!请随时提交拉取请求。