Agentforce MCP Server
这个 MCP 服务器提供了一些工具来与 Salesforce Agentforce API 交互,允许与 Salesforce 客服人员进行身份验证、创建会话和交换消息。
README
Agentforce MCP 服务器
此 MCP 服务器提供与 Salesforce Agentforce API 交互的工具。它允许与 Agentforce 坐席进行身份验证、会话创建和消息交换。
克隆后的入门指南
如果您刚刚克隆了此存储库,可以使用交互式设置脚本快速配置和运行服务器:
chmod +x setup.sh
./setup.sh
设置脚本将执行以下操作:
- 检查您的 Python 版本
- 安装所需的依赖项
- 指导您输入 Salesforce 凭据
- 测试与 Salesforce 的连接
- 提供启动服务器的选项
- 提供配置 Claude Desktop 的说明
或者,您可以按照以下手动步骤操作:
-
安装依赖项:
pip install -r requirements.txt -
设置您的环境变量:
cp .env.example .env -
收集您的 Salesforce 凭据:
- SALESFORCE_ORG_ID: 您的 18 位 Salesforce 组织 ID
- SALESFORCE_AGENT_ID: 来自您的 Agentforce 坐席的 18 位坐席 ID
- SALESFORCE_CLIENT_ID: 来自您的互联应用的 Consumer Key
- SALESFORCE_CLIENT_SECRET: 来自您的互联应用的 Consumer Secret
- SALESFORCE_SERVER_URL: 您的 Salesforce My Domain URL,不带 https:// 前缀
-
使用收集的凭据编辑您的 .env 文件:
SALESFORCE_ORG_ID="00D5f000000J2PKEA0" SALESFORCE_AGENT_ID="0XxHn000000x9F1KAI" SALESFORCE_CLIENT_ID="3MVG9OGq41FnYVsFgnaG0AzJDWnoy37Bb18e0R.GgDJu2qB9sqppVl7ehWmJhGvPSLrrA0cBNhDJdsbZXnv52" SALESFORCE_CLIENT_SECRET="210117AC36E9E4C8AFCA02FF062B8A677BACBFFB71D2BB1162D60D316382FADE" SALESFORCE_SERVER_URL="example.my.salesforce.com"(注意:这些是虚构的示例值。请替换为您的实际凭据。)
-
使服务器脚本可执行:
chmod +x agentforce_mcp_server.py -
运行服务器:
python agentforce_mcp_server.py
有关查找 Salesforce 凭据的详细说明,请参见下面的 设置 Salesforce 部分。
设置
-
确保您已安装 Python 3.10 或更高版本。
-
安装所需的依赖项:
pip install -r requirements.txt -
使服务器脚本可执行:
chmod +x agentforce_mcp_server.py
配置
服务器使用环境变量进行配置。这些变量从 .env 文件加载。
-
复制示例环境变量文件以创建您自己的文件:
cp .env.example .env -
编辑
.env文件并填写您的值:SALESFORCE_ORG_ID="your_org_id_here" SALESFORCE_AGENT_ID="your_agent_id_here" # 您在 Salesforce 中找到的 18 位坐席 ID SALESFORCE_CLIENT_ID="your_client_id_here" # 来自您的互联应用的 Consumer Key SALESFORCE_CLIENT_SECRET="your_client_secret_here" # 来自您的互联应用的 Consumer Secret SALESFORCE_SERVER_URL="your_server_url_here" # 您的 My Domain URL(例如,example.my.salesforce.com)
Salesforce 配置
要使用 Agentforce API,您需要:
- 在您的 Salesforce 组织中创建一个互联应用
- 找到您的 Agentforce 坐席 ID
- 记下您的 Salesforce My Domain URL
有关这些步骤的详细说明,请参见下面的 设置 Salesforce 部分。
运行服务器
使用以下命令运行服务器:
python agentforce_mcp_server.py
可用工具
MCP 服务器公开以下工具:
1. authenticate
使用客户端电子邮件向 Agentforce API 进行身份验证。
参数:
client_email: 用于身份验证的客户端电子邮件
2. create_agent_session
使用配置的 Agentforce 坐席创建一个会话。
参数:
client_email: 经过身份验证的客户端电子邮件
3. send_message_to_agent
向 Agentforce 坐席发送消息并返回响应。
参数:
client_email: 经过身份验证的客户端电子邮件message: 要发送给坐席的消息
4. get_session_status
获取当前会话的状态,包括身份验证状态、会话 ID 和序列 ID。
参数:
client_email: 经过身份验证的客户端电子邮件
5. complete_agentforce_conversation
方便的方法,可处理完整的流程 - 身份验证、会话创建和消息发送。
参数:
client_email: 用于身份验证的客户端电子邮件user_query: 要发送给坐席的消息
与 Claude for Desktop 一起使用
要将此服务器与 Claude for Desktop 一起使用,请更新您的 claude_desktop_config.json 文件:
{
"mcpServers": {
"agentforce": {
"command": "python",
"args": [
"/path/to/your/agentforce_mcp_server.py"
]
}
}
}
将路径替换为计算机上服务器脚本的绝对路径。
按平台划分的路径位置
macOS
- 配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json - 示例路径:
/Users/yourusername/Projects/agentforce-mcp-server/agentforce_mcp_server.py
Windows
- 配置文件:
%APPDATA%\Claude\claude_desktop_config.json - 示例路径:
C:\Users\yourusername\Projects\agentforce-mcp-server\agentforce_mcp_server.py
设置 Salesforce
创建互联应用
要使用 Agentforce API,您需要在您的 Salesforce 组织中创建一个互联应用:
- 以管理员身份登录到您的 Salesforce 组织
- 转到 设置
- 在快速查找框中,搜索“应用管理器”并单击它
- 单击 新建互联应用 按钮
- 填写基本信息:
- 互联应用名称: Agentforce MCP 集成(或您喜欢的任何名称)
- API 名称: Agentforce_MCP_Integration(这将自动填写)
- 联系人电子邮件: 您的电子邮件地址
- 选中 启用 OAuth 设置
- 将 回调 URL 设置为
https://localhost/oauth/callback(未使用,但必需) - 在 选定的 OAuth 范围 下,添加:
- 通过 API 管理用户数据 (api)
- 随时执行请求 (refresh_token, offline_access)
- 单击 保存
- 保存后,您将被重定向到互联应用详细信息页面
- 记下 Consumer Key(这是您的客户端 ID),然后单击 单击以显示 旁边的 Consumer Secret 以获取您的客户端密钥
查找您的坐席 ID
要查找您的 Agentforce 坐席 ID:
- 登录到您的 Salesforce 组织
- 导航到 Einstein 坐席构建器
- 选择要使用的坐席
- 查看浏览器中的 URL - 它将包含以下格式的坐席 ID:
https://your-salesforce-instance.lightning.force.com/lightning/r/Agent__c/0XxXXXXXXXXXXXXX/view - 坐席 ID 是 URL 中的 18 位 ID (
0XxXXXXXXXXXXXXX)
查找您的 Salesforce My Domain URL
要查找您的 Salesforce My Domain URL:
- 登录到您的 Salesforce 组织
- 转到 设置
- 在快速查找框中,搜索“我的域”并单击它
- 您将看到您的域,格式为
DOMAIN-NAME.my.salesforce.com - 在您的 .env 文件中使用此 URL,不带 "https://" 前缀
查找您的组织 ID
要查找您的 Salesforce 组织 ID:
- 登录到您的 Salesforce 组织
- 转到 设置
- 在快速查找框中,搜索“公司信息”并单击它
- 查找“组织 ID”字段 - 这是您的 Salesforce 组织 ID
- 它将是一个 15 或 18 位的字母数字字符串
注意事项
- 服务器自动管理消息交换的序列 ID
- 为每个客户端电子邮件维护身份验证和会话状态
- 所有 API 交互都将记录以进行调试
故障排除
如果您遇到问题:
- 身份验证失败: 验证您的互联应用设置,并确保客户端 ID 和密钥正确
- 会话创建错误: 检查您的坐席 ID,并确保它是 18 位版本
- 连接问题: 验证您的 Salesforce My Domain URL 是否正确(不带 "https://" 前缀)
- 权限错误: 确保您的互联应用已启用正确的 OAuth 范围
测试设置
您可以使用包含的测试脚本测试您的设置:
python test_agentforce.py
这将尝试进行身份验证、创建会话以及与您的 Agentforce 坐席交换消息。
贡献和 GitHub 推送
此存储库包含一个有用的脚本,可简化将更改推送到 GitHub 的过程:
chmod +x github_push.sh
./github_push.sh
github_push.sh 脚本将执行以下操作:
- 检查您的系统上是否安装了 git
- 验证是否不会推送
.env等敏感文件(它们位于.gitignore中) - 提示您输入 GitHub 存储库 URL
- 如果需要,初始化 git 存储库,或更新远程 URL
- 添加所有文件并显示它们以供您查看
- 使用描述性消息提交更改
- 将更改推送到 GitHub
这使得共享您的自定义项或贡献回项目变得容易,同时确保敏感信息的安全。
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。