A

Agentforce连接器

@xlengelle-sf/agentforce-mcp-xlengelle
0 Stars 8 次浏览 xlengelle-sf 更新于 2026-08-23

该MCP服务器提供了与Salesforce Agentforce API交互的工具,允许进行身份验证、会话创建以及与Salesforce代理的消息交换。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Agentforce MCP Server

此MCP服务器提供了与Salesforce Agentforce API交互的工具。它允许进行身份验证、会话创建以及与Agentforce代理的消息交换。

克隆后开始使用

如果您刚刚克隆了此仓库,可以使用交互式设置脚本来快速配置并运行服务器:

chmod +x setup.sh
./setup.sh

设置脚本将执行以下操作:

  1. 检查您的Python版本
  2. 安装所需的依赖项
  3. 引导您输入您的Salesforce凭据
  4. 测试您到Salesforce的连接
  5. 提供启动服务器的选项
  6. 提供配置Claude Desktop的说明

或者,您可以按照以下手动步骤操作:

  1. 安装依赖项

    pip install -r requirements.txt
    
  2. 设置环境变量

    cp .env.example .env
    
  3. 收集您的Salesforce凭据

    • SALESFORCE_ORG_ID:您的18位Salesforce组织ID
    • SALESFORCE_AGENT_ID:来自您的Agentforce代理的18位代理ID
    • SALESFORCE_CLIENT_ID:来自您的已连接应用程序的消费者密钥
    • SALESFORCE_CLIENT_SECRET:来自您的已连接应用程序的消费者密钥
    • SALESFORCE_SERVER_URL:不带https://前缀的您的Salesforce My Domain URL
  4. 用收集到的凭据编辑您的.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"
    

    (注意:这些是虚构的示例值。请替换为您的实际凭据。)

  5. 使服务器脚本可执行

    chmod +x agentforce_mcp_server.py
    
  6. 运行服务器

    python agentforce_mcp_server.py
    

有关查找您的Salesforce凭据的详细说明,请参阅下面的设置Salesforce部分。

设置

  1. 确保您已安装Python 3.10或更高版本。

  2. 安装所需依赖项:

    pip install -r requirements.txt
    
  3. 使服务器脚本可执行:

    chmod +x agentforce_mcp_server.py
    

配置

服务器使用环境变量进行配置。这些变量从.env文件中加载。

  1. 复制示例环境文件以创建您自己的环境文件:

    cp .env.example .env
    
  2. 编辑 .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"  # 您的连接应用中的消费者密钥
    SALESFORCE_CLIENT_SECRET="your_client_secret_here"  # 您的连接应用中的消费者密钥
    SALESFORCE_SERVER_URL="your_server_url_here"  # 您的 My Domain URL(例如 example.my.salesforce.com)
    

Salesforce 配置

要使用 Agentforce API,您需要:

  1. 在您的 Salesforce 组织中创建一个连接的应用
  2. 找到您的 Agentforce 代理 ID
  3. 记录您的 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 组织中创建一个连接的应用:

  1. 以管理员身份登录到您的 Salesforce 组织
  2. 转到 设置
  3. 在快速查找框中,搜索“App Manager”并点击它
  4. 点击 新建连接的应用 按钮
  5. 填写基本信息:
    • 连接的应用名称:Agentforce MCP 集成(或您喜欢的任何名称)
    • API 名称:Agentforce_MCP_Integration(这将自动填充)
    • 联系人电子邮件:您的电子邮件地址
  6. 勾选 启用 OAuth 设置
  7. 回调 URL 设置为 https://localhost/oauth/callback(这不会被使用但需要填写)
  8. 选择的 OAuth 范围 下,添加:
    • 通过 API 管理用户数据 (api)
    • 随时执行请求 (refresh_token, offline_access)
  9. 点击 保存
  10. 保存后,您将被重定向到连接应用的详细信息页面
  11. 记下 消费者密钥(这是您的客户端 ID),然后点击 单击显示 旁边的 消费者密码 来获取您的客户端密码

查找您的代理 ID

要找到您的 Agentforce 代理 ID:

  1. 登录到您的 Salesforce 组织
  2. 导航到 Einstein 代理构建器
  3. 选择您要使用的代理
  4. 查看浏览器中的 URL - 它将以如下格式包含代理 ID: https://your-salesforce-instance.lightning.force.com/lightning/r/Agent__c/0XxXXXXXXXXXXXXX/view
  5. 代理 ID 是 URL 中的 18 个字符 ID (0XxXXXXXXXXXXXXX)

查找您的 Salesforce My Domain URL

要找到您的 Salesforce My Domain URL:

  1. 登录到您的 Salesforce 组织
  2. 转到 设置
  3. 在快速查找框中,搜索“我的域”并点击它
  4. 您会看到格式为 DOMAIN-NAME.my.salesforce.com 的域名
  5. 在 .env 文件中使用此 URL 时去掉 "https://" 前缀

查找您的组织 ID

要找到您的 Salesforce 组织 ID:

  1. 登录到您的 Salesforce 组织
  2. 转到 设置
  3. 在快速查找框中,搜索“公司信息”并点击它
  4. 查找“组织 ID”字段 - 这是您的 Salesforce 组织 ID
  5. 它将是一个 15 或 18 位的字母数字字符串

注意事项

  • 服务器自动管理消息交换的序列 ID
  • 为每个客户端电子邮件维护认证和会话状态
  • 所有 API 交互都记录下来以便调试

故障排除

如果遇到问题:

  1. 认证失败:验证您的连接应用设置,并确保客户端 ID 和密钥正确
  2. 会话创建错误:检查您的代理 ID 并确保它是 18 个字符版本
  3. 连接问题:验证您的 Salesforce My Domain URL 是否正确(不带 "https://" 前缀)
  4. 权限错误:确保您的连接应用启用了正确的 OAuth 范围

测试设置

您可以使用随附的测试脚本来测试您的设置:

python test_agentforce.py

这将尝试进行认证、创建会话并与您的 Agentforce 代理交换消息。

贡献与 GitHub 推送

此仓库包括一个有用的脚本,简化了将更改推送到 GitHub 的过程:

chmod +x github_push.sh
./github_push.sh

github_push.sh 脚本将执行以下操作:

  1. 检查系统上是否安装了 git
  2. 确认像 .env 这样的敏感文件不会被推送(它们在 .gitignore 中)
  3. 提示你输入 GitHub 仓库的 URL
  4. 如果需要的话,初始化一个 git 仓库,或者更新远程仓库的 URL
  5. 添加所有文件并显示供你审查
  6. 使用描述性信息提交更改
  7. 将更改推送到 GitHub

这使得分享你的自定义设置或为项目做贡献变得简单,同时确保敏感信息的安全。