使用说明
项目简介
Salesforce CLI MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它封装了 Salesforce 命令行工具 (Salesforce CLI),并将 Salesforce CLI 的各项功能以 MCP 协议定义的工具 (Tools) 和 资源 (Resources) 的形式暴露出来,从而使得大型语言模型 (LLM) 驱动的应用能够安全、可扩展地调用 Salesforce CLI 的能力,实现与 Salesforce 平台的集成和自动化。
主要功能点
- Salesforce CLI 命令工具化: 将 Salesforce CLI 的所有命令(包括核心命令和插件命令)动态注册为 MCP 工具 (Tools),LLM 可以通过调用这些工具执行 Salesforce 操作。
- 项目目录管理: 支持配置和管理多个 Salesforce 项目目录 (Roots),允许在指定的项目上下文中执行命令,适用于需要项目环境的操作,如部署、代码检索等。
- 命令发现与缓存: 自动发现已安装的 Salesforce CLI 命令,并缓存命令元数据以提升服务器启动性能,支持手动刷新缓存。
- 帮助文档资源: 提供 Salesforce CLI 的帮助文档作为 MCP 资源 (Resources),包括通用帮助、主题帮助和命令帮助,方便 LLM 获取命令使用说明。
- 多种工具调用方式: 支持通过工具名称直接调用,也支持通过资源 URI 在特定项目根目录下执行命令。
- 项目根目录动态配置: 支持通过命令行参数或 MCP 工具动态配置 Salesforce 项目根目录。
安装步骤
-
环境准备:
- 确保已安装 Node.js (版本 18 或更高) 和 npm。
- 确保已安装 Salesforce CLI ('sf') 并已完成基本配置,包括连接到您的 Salesforce 组织。
-
克隆仓库:
git clone https://github.com/codefriar/sf-mcp.git cd sf-mcp -
安装依赖:
npm install
服务器配置
为了让 MCP 客户端(例如 Claude Desktop)连接到 Salesforce CLI MCP Server,您需要在客户端的配置文件中指定服务器的启动命令和参数。
以下是 Claude Desktop 客户端 '.claude.json' 配置文件中配置 Salesforce CLI MCP Server 的示例:
{ "tools": { "salesforce": { "serverName": "Salesforce CLI MCP Server", "command": "/path/to/node", "args": [ "/path/to/sf-mcp/build/index.js", "/path/to/your/salesforce/project1", // (可选) Salesforce 项目根目录 1 的路径 "/path/to/your/salesforce/project2" // (可选) Salesforce 项目根目录 2 的路径,可以配置多个 ] } } }
配置参数说明:
- serverName: MCP 服务器的名称,可以自定义,例如 "Salesforce CLI MCP Server"。
- command: 启动 MCP 服务器的命令,通常是 Node.js 的执行路径。请替换为您的 Node.js 可执行文件的实际路径,例如 '/usr/local/bin/node' 或 'C:\Program Files\nodejs\node.exe'。
- args: 传递给服务器启动命令的参数,以数组形式提供。
- 第一个参数通常是服务器入口文件 'index.js' 的路径,请根据您的实际仓库位置进行调整,例如 '/path/to/sf-mcp/build/index.js'。
- 随后的参数是可选的 Salesforce 项目根目录的路径。您可以配置一个或多个项目根目录,服务器启动时会将这些目录注册为项目根目录。如果您不需要预先配置项目根目录,可以省略这些参数。
基本使用方法
-
启动服务器: 在仓库根目录下,使用以下命令启动 Salesforce CLI MCP Server:
npm start [可选: 项目根目录路径1] [可选: 项目根目录路径2] ...例如,启动服务器并指定两个项目根目录:
npm start /path/to/project1 /path/to/project2 -
客户端连接: 配置 MCP 客户端(如 Claude Desktop),并使用上述服务器配置示例中的 JSON 配置信息连接到正在运行的 Salesforce CLI MCP Server。
-
调用工具和资源: 在 MCP 客户端中,您可以:
- 使用 'sf_version' 工具获取 Salesforce CLI 版本信息。
- 使用 'sf_org_list' 工具列出 Salesforce 组织。
- 使用 'sf_apex_run' 工具运行 Apex 代码。
- 使用 'sf://help' 资源获取通用帮助文档。
- 使用 'sf://topics/org/help' 资源获取组织相关命令的帮助文档。
- 使用 'sf_set_project_directory' 工具动态设置项目根目录。
- 使用 'sf_list_roots' 工具列出已配置的项目根目录。
更多可用的工具和资源请参考仓库的 'README.md' 文件。
通过以上步骤,您就可以使用 Salesforce CLI MCP Server,让 LLM 智能体安全便捷地操作 Salesforce,实现各种自动化任务。
信息
分类
商业系统