此MCP服务器提供了与Salesforce Agentforce API交互的工具。它允许身份验证、会话创建以及与Agentforce代理的消息交换。
如果你刚刚克隆了这个仓库,可以使用交互式设置脚本来快速配置并运行服务器:
chmod +x setup.sh
./setup.sh
设置脚本将执行以下操作:
或者,你可以按照以下手动步骤进行操作:
安装依赖项:
pip install -r requirements.txt
设置环境变量:
cp .env.example .env
收集你的Salesforce凭据:
编辑你的.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" # 已连接应用中的消费者密钥
SALESFORCE_CLIENT_SECRET="your_client_secret_here" # 已连接应用中的消费者秘密
SALESFORCE_SERVER_URL="your_server_url_here" # 你的My Domain URL(例如,example.my.salesforce.com)
要使用Agentforce API,你需要:
关于这些步骤的详细说明,请参阅下面的设置Salesforce部分。
使用以下命令运行服务器:
python agentforce_mcp_server.py
MCP服务器暴露了以下工具:
authenticate使用客户端电子邮件与Agentforce API进行身份验证。
参数:
client_email:用于身份验证的客户端电子邮件create_agent_session与配置的Agentforce代理创建会话。
参数:
client_email:已认证的客户端电子邮件send_message_to_agent向Agentforce代理发送消息,并返回响应。
参数:
client_email:已认证的客户端电子邮件message:要发送给代理的消息get_session_status获取当前会话的状态,包括认证状态、会话ID和序列ID。
参数:
client_email:已认证的客户端电子邮件complete_agentforce_conversation处理整个流程的便捷方法——认证、会话创建和消息发送。
参数:
client_email:用于认证的客户端电子邮件user_query:要发送给代理的消息要将此服务器与Claude for Desktop一起使用,请更新你的claude_desktop_config.json文件:
{
"mcpServers": {
"agentforce": {
"command": "python",
"args": [
"/path/to/your/agentforce_mcp_server.py"
]
}
}
}
将路径替换为服务器脚本在你机器上的绝对路径。
~/Library/Application Support/Claude/claude_desktop_config.json/Users/yourusername/Projects/agentforce-mcp-server/agentforce_mcp_server.py%APPDATA%\Claude\claude_desktop_config.jsonC:\Users\yourusername\Projects\agentforce-mcp-server\agentforce_mcp_server.py要使用Agentforce API,你需要在你的Salesforce组织中创建一个已连接的应用:
https://localhost/oauth/callback(虽然未使用但需要)要找到你的Agentforce代理ID:
https://your-salesforce-instance.lightning.force.com/lightning/r/Agent__c/0XxXXXXXXXXXXXXX/view的代理ID0XxXXXXXXXXXXXXX)就是你的代理ID要找到你的Salesforce My Domain URL:
DOMAIN-NAME.my.salesforce.com的域名.env文件中使用这个URL,去掉“https://”前缀要找到你的Salesforce组织ID:
如果你遇到问题:
你可以使用包含的测试脚本来测试你的设置:
python test_agentforce.py
这将尝试进行身份验证、创建会话并与你的Agentforce代理交换消息。
此仓库包含一个有用的脚本,简化了将更改推送到GitHub的过程:
chmod +x github_push.sh
./github_push.sh
github_push.sh脚本将执行以下操作:
.env不会被推送(它们在.gitignore中)这使得分享你的自定义内容或为项目做出贡献变得容易,同时确保敏感信息的安全。