使用说明
Salesforce模型上下文协议(MCP)服务器
这 Salesforce MCP服务器 将高级AI助手(如Claude Desktop、Cline/Roo等VS Code插件或Agentforce)直接连接到您的Salesforce组织。
模型上下文协议(MCP)是一个开放标准,使AI模型能够作为系统的安全扩展。通过使用此服务器,您的AI助手可以安全地查询Salesforce数据,与标准和自定义对象交互,检查元数据,并执行管理或操作工作流——所有这些都受您定义的严格权限和访问策略的约束。
🚀 特性
- 目标探索:描述对象、字段、元数据和关系。
- 数据查询:直接从AI提示中安全地运行SOQL查询。
- 记录管理:获取、汇总、创建和更新标准/自定义对象记录(例如,帐户、联系人、机会)。
- 任务自动化:创建后续任务、记录呼叫或自动解决案例。
- 严格的安全和护栏:包括对象/字段的分配列表,防止未经授权的写入或批量删除。
🛠️ 先决条件
在安装MCP服务器之前,请确保您已准备好以下内容:
- Node.js (v18或更高版本)安装在您的计算机上。
- A. Salesforce组织 (例如,开发人员版、沙盒或生产组织)。
- Salesforce OAuth/互联应用:您必须在Salesforce中创建Connected App才能检索访问令牌或配置OAuth流。
设置Salesforce互联应用程序
要验证MCP服务器,请创建一个已连接的应用程序:
- 首选 设置 > 应用程序管理器 > 新连接的应用程序.
- 启用OAuth设置。
- 添加以下范围
Manage user data via APIs (api)和Perform requests at any time (refresh_token, offline_access). - 保存应用程序以获取您的 消费者密钥 和 消费者秘密.
- 使用OAuth流(例如,用户名密码或Web服务器流)获取有效的
ACCESS_TOKEN.
💻 安装
克隆存储库并安装依赖项以在本地运行此服务器。
# 1. Clone the repository
git clone https://github.com/your-username/salesforce-mcp-server.git
cd salesforce-mcp-server
# 2. Install dependencies
npm install
# 3. Build the server
npm run build
⚙️ 配置
创建一个 .env 项目根目录中的文件,以安全地提供您的Salesforce凭据并管理访问权限。
# /salesforce-mcp-server/.env
# Your Salesforce instance URL (e.g., your My Domain URL)
SALESFORCE_BASE_URL=https://yourCompany.my.salesforce.com
# API Version to use (e.g., v61.0)
SALESFORCE_API_VERSION=v61.0
# Your valid Session ID or OAuth Access Token
SALESFORCE_ACCESS_TOKEN=your_valid_access_token_here
# Comma-separated list of objects the AI is allowed to read/write
ALLOWED_OBJECTS=Account,Contact,Opportunity,Task,Case
# Set to true to allow the AI to perform Write and DML operations
ALLOW_WRITES=true
🤖 如何将其与您的AI助手一起使用
MCP服务器不作为独立的web应用程序运行;相反,它们被像这样的客户消费 克劳德桌面版.
连接到克劳德桌面
您可以将此服务器添加到您的Claude Desktop配置中,以便Claude可以在您的聊天过程中自动调用Salesforce工具。
- 打开您的Claude Desktop配置文件。
- 窗户:
%APPDATA%\Claude\claude_desktop_config.json - 雨衣:
~/Library/Application Support/Claude/claude_desktop_config.json
- 窗户:
- 添加
salesforce服务器到您的配置:
{
"mcpServers": {
"salesforce": {
"command": "node",
"args": [
"C:/absolute/path/to/salesforce-mcp-server/dist/server.js"
],
"env": {
"SALESFORCE_BASE_URL": "https://yourInstance.my.salesforce.com",
"SALESFORCE_API_VERSION": "v61.0",
"SALESFORCE_ACCESS_TOKEN": "your_access_token",
"ALLOWED_OBJECTS": "Account,Contact,Opportunity,Task,Case",
"ALLOW_WRITES": "true"
}
}
}
}
- 重新启动克劳德桌面。现在,您将在UI中看到与Salesforce的连接。
聊天中使用示例
连接后,您可以使用自然语言直接向AI助手提问:
- “您能列出Opportunity对象上的字段吗?”
- “运行SOQL查询,查找所有行业为‘技术’的账户。”
- “总结最新的3个高优先级案例。”
- 为联系人ID“003xxx”创建一个主题为“报价跟进”的跟进任务
🛡️ 安全最佳实践
当对Salesforce组织使用AI代理时,遵守最小特权原则至关重要:
- 始终先在沙盒中进行测试 在连接您的生产组织之前。
- 优化您允许的对象:保留
ALLOWED_OBJECTS阵列尽可能小。使用它来限制AI更改关键的ERP或HR对象。 - 控件写入:从以下内容开始
ALLOW_WRITES=false。仅当您信任目标组织中的验证步骤时,才打开写入。 - 限制集成用户:其凭据生成的Salesforce用户
ACCESS_TOKEN应具有极其受限的配置文件/权限集(字段级安全),以便AI无法在逻辑上访问敏感字段。