⚡(闪电符号,常用于表示速度、活力、电力或警报等含义) Salesforce MCP CLI(注:这里的“MCP”可能是一个特定上下文中的缩写或专有名词,直接翻译为“MCP”可能无法准确传达其具体含义,但在此保留原样以保持原文的完整性。)
一个用于与(系统/服务等)交互的现代命令行界面(CLI) Salesforce模型上下文协议(MCP)。
这个命令行界面(CLI)使开发者能够:
- 执行SOQL查询
- 管理Salesforce组织
- 部署和检索元数据
- 运行Apex测试
- 创建Lightning Web Components(LWC)
- 而且更多🚀
它还支持 自然语言查询 由……提供支持/驱动 Ollama(注:Ollama是一个用于训练和部署大型语言模型的工具或平台,但在此上下文中,若仅作为名称翻译,则保持原样;若需更具体的翻译或解释,需结合具体语境) 用于直观的命令执行。
用法
sf-mcp --help
Usage: sf-mcp [options] [command]
Salesforce MCP CLI Client
Options:
-V, --version output the version number
--html Generate HTML output (default: true) (default: true)
--json Output JSON to console only
-h, --help display help for command
Commands:
natural [options] Execute a command using natural language input
list-tools [options] List all available MCP tools
query [options] Execute a SOQL query
apex-test [options] Run Apex tests
describe [options] Describe a Salesforce object (uses SOQL to query object metadata)
list-orgs [options] List all configured Salesforce orgs
deploy [options] Deploy metadata to Salesforce
retrieve [options] Retrieve metadata from Salesforce
create-lwc [options] Create a Lightning Web Component
code-analyzer [options] Run code analyzer on files
devops-projects [options] List DevOps Center projects
assign-permset [options] Assign permission set to user
help [command] display help for command
______________________________________________________________________
截图

✨(闪闪发光的星星或类似符号,无具体含义,常用于表达喜悦、兴奋或作为装饰) 特点/特性
- 🔍 执行 SOQL 查询 针对Salesforce组织
- 🧩 列出已配置的Salesforce组织
- 💬 跑 自然语言查询 (例如,“从账户中获取10条记录”)
- 📦 部署和检索元数据
- 🧪 运行 顶点测试 并分析代码
- ⚙️ 创建 Lightning Web Components(LWC)
- 🧭 列表 DevOps中心项目 并分配权限集
- 🧾 输出结果在 JSON(JavaScript Object Notation,JavaScript对象表示法) 或者 暗色主题的HTML (Monaco 编辑器 + Tailwind CSS)
______________________________________________________________________
工具或器具 安装
通过 npm 全局安装:
npm install -g sf-mcp-cli______________________________________________________________________
⚙️ 通常表示“齿轮”或“设置/配置”的图标,在中文中可以翻译为“齿轮”或根据上下文翻译为“设置”、“配置”等。 先决条件
1️⃣ Node.js
- 版本 18.0.0或更高版本
- 检查您的版本:
node --version2️⃣ Salesforce CLI(Salesforce 命令行界面)
- 必须安装并进行身份验证
- 验证组织:
sf org list- 验证一个组织:
sf org login web --alias 3️⃣ Ollama(用于自然指令)
- 安装 Ollama → Ollama 安装指南
- 拉动模型:
ollama pull llama3.2:latest- 启动服务器:
ollama serve______________________________________________________________________
拼图块 Salesforce MCP 配置
确保 MCP封装(或包装) 和 Node.js 路径 是可访问的:
Default Node path:
/Users//.local/share/sf/client/2.108.6-399bc9e/bin/node
Default wrapper path:
/Users//Library/Application Support/Code/User/globalStorage/salesforce.salesforcedx-einstein-gpt/MCP/a4d-mcp-wrapper.js______________________________________________________________________
⚙️ 通常表示齿轮或机械装置的图标,可以翻译为“齿轮”或“机械装置”。在具体语境中,它可能代表某种与机械、工程或技术相关的概念。 配置
设置可选环境变量:
export SF_NODE_PATH=/path/to/node
export SF_MCP_WRAPPER=/path/to/a4d-mcp-wrapper.js
export OLLAMA_URL=http://localhost:11434验证组织别名:
sf org list______________________________________________________________________
🚀(火箭/快速上升/加速) 使用方法
显示所有可用命令:
sf-mcp --help______________________________________________________________________
🧾(这个符号本身在中文里没有直接对应的翻译,它通常表示“清单”或“文件”的意思,但在这里作为一个单独的符号,可以理解为一种示意或标记) 命令
🔹(这个符号本身在中文中没有特定的含义,通常用作装饰或分隔符,可直接保留或根据上下文翻译为“(装饰符号)”或“(分隔符)”等) list-orgs
列出已配置的Salesforce组织。
sf-mcp list-orgs [--org ] [--json]选项:
--org指定组织别名(默认:ALLOW_ALL_ORGS)--json输出JSON格式
示例:
sf-mcp list-orgs --json样本输出:
[
{
"username": "agentforcereldevb@salesforce.com",
"instanceUrl": "https://tfb--reldevb.sandbox.my.salesforce.com",
"orgId": "00DEk00000MP19AMAT"
}
]🖥️ 没有 --json生成一个深色主题 sf-mcp-orgs.html 使用 Monaco 编辑器。
______________________________________________________________________
🔹 query
运行SOQL查询。
sf-mcp query --org --query [--directory
] [--json]示例:
sf-mcp query -o ea10 -q "SELECT Id, Name FROM Account LIMIT 10" --json输出:
[
{ "Id": "001Hs00004aQC2YIAW", "Name": "test2" },
{ "Id": "001Hs00004aQCT2IAO", "Name": "test2" }
]______________________________________________________________________
🔹(这个符号本身没有直接的中文翻译,它在中文环境中通常被用作一个装饰性或强调性的符号,不直接对应到具体的中文词汇或概念。) natural
执行一个 自然语言查询 由……提供支持/驱动 Ollama(注:这是一个专有名词,通常不直接翻译,保持原样使用,但在中文语境下,可以理解为这是一个特定的软件、框架或技术的名称,具体含义需根据上下文确定。)。
sf-mcp natural "" [--org ] [--model
] [--json]示例:
sf-mcp natural "Get 10 records from Account" -o ea10 --json输出与(之前的/某个特定的)相同 query 命令。
______________________________________________________________________
🔹 其他命令
| 命令 | 描述 |
|---|---|
list-tools | 列出可用的MCP工具 |
apex-test | 运行Apex测试 |
describe | 描述Salesforce对象的字段 |
deploy | 部署元数据 |
retrieve | 获取元数据 |
create-lwc | 创建一个Lightning Web组件 |
code-analyzer | 运行静态代码分析 |
devops-projects | 列出DevOps中心项目 |
assign-permset | 为用户分配权限集 |
______________________________________________________________________
💾 代表“软盘”或“存储设备”的符号。 输出格式
- 🧱 代表“砖块”或“建筑物的砖块”之意。 JSON: 使用
--json用于控制台输出
- 🌙 月亮(或月光) HTML: (可翻译为)超文本标记语言: 默认模式生成深色主题的HTML文件(例如。,
sf-mcp-orgs.html,sf-mcp-query-results.html)
- 搭配风格为 Tailwind CSS - 包括 摩纳哥编辑器 以及复制到剪贴板的支持
______________________________________________________________________
工具或物品的通用符号 故障排除
| 问题 | 解决方案 |
|---|---|
ENOENT 错误 | 确保 --directory 路径存在 |
| Ollama 错误 | 确认 Ollama 服务器正在运行且模型已拉取 |
| 组织认证问题 | 通过以下方式检查别名 sf org list 并重新进行身份验证 |
| 路径问题 | 验证 SF_NODE_PATH 并且 SF_MCP_WRAPPER 变量 |
______________________________________________________________________
🧪 表示“实验”或“试管”(根据上下文可能有所不同,但通常与科学实验相关)。 发展
克隆并设置
git clone https://github.com/mchinnappan100/sf-mcp-cli
cd sf-mcp-cli
npm install本地运行
npm link
sf-mcp --help运行测试
npm run testLint Code(或译为“Lint代码”)
npm run lint______________________________________________________________________
🤝(握手) 做出贡献
- 为仓库创建分支(或:克隆仓库)
- 创建一个特性分支
git checkout -b feature/xyz- 提交您的更改
git commit -m "Add xyz feature"- 推送并打开一个拉取请求
______________________________________________________________________
📄(文件、文档、纸张的符号) 许可证
麻省理工学院许可证(MIT License) 在开源条款下,可免费使用和修改。
______________________________________________________________________
🧑💻 表示“坐在电脑前的人”或“打字的人”。 支持
- 🐞 报告问题 →
______________________________________________________________________
🙏(合十礼,表示感谢、祈求或尊敬) 致谢
- 使用(某种材料/技术/方法)建造 Commander.js(注:这个名称在中文中通常直接保留原样,因为它是特定库或框架的名称,但为了说明其含义,可以理解为“命令行工具库/框架.js”,不过具体翻译还需根据上下文确定), Axios,和 @modelcontextprotocol/sdk 翻译为中文可以是:“@模型上下文协议/开发工具包”。不过,这里的“@”符号在中文语境下通常不直接用于描述软件包或开发工具的名称,它更多地是在编程或技术社区中用来指代特定的包、库或框架。因此,在中文表达中,我们可能会省略“@”符号,直接说“模型上下文协议开发工具包”或根据具体上下文进行适当调整。但为了保持原意的完整性,上述翻译保留了“@”符号
- 由……提供动力/支持 Ollama(注:Ollama是一个用于训练和运行大型语言模型的工具或平台的名称,直接翻译可能无法准确传达其含义,因此在此保留原英文名称。) 用于自然语言处理
- YouTube视频:\[使用Salesforce DX MCP升级您的开发者工具 | 现代化您的开发者工具\]
- Vivek Chawla的YouTube视频:
