使用说明
MCP工作台
Salesforce Lightning应用程序,用于在Agentforce中配置MCP(模型上下文协议)服务器和工具之前对其进行测试和验证。Workbench允许您:
- 连接 通过命名凭据连接到MCP服务器
- 发现 可用工具及其模式
- 测试 通过动态UI使用自定义参数的工具
- 验证 部署到Agentforce代理之前的响应
- 调试 带有详细错误消息的连接问题
目录
安装
先决条件
- Salesforce命令行界面
sf已安装 - 连接到Salesforce组织(建议使用沙盒或scratch组织) 启用MCP Beta权限
- 通过代理注册表注册的一个或多个MCP服务器。注册步骤: 注册MCP服务器
步骤1:部署代码
非命名空间组织
sf package install -p 04tHs000000iSjcIAE -o {TARGET}
或
https://{ORG_NAME}.my.salesforce.com/packaging/installPackage.apexp?p0=04tHs000000iSjcIAE
命名空间组织
克隆仓库:
git clone git@github.com:mvogelgesang/MCP-Workbench.git
开放项目
cd mcpWorkbench
将所有组件部署到您的组织
sf project deploy start --source-dir force-app/main/default
部署的内容:
- Apex类(
McpToolTester)和测试类 - 内容资产(MCP徽标)
- Lightning应用程序(
MCP_Workbench) - 闪电网络组件(
mcpToolTester) - 选项卡(
MCP Workbench) - 权限集
步骤2:分配权限集
sf org assign permset --name MCP_Workbench
使用MCP工作台
第一步:打开应用程序
- 单击左上角的应用程序启动器(华夫饼图标)
- 搜索 “MCP工作台”
- 单击打开
你应该看看 MCP工作台 选项卡。
步骤2:选择MCP服务器
- 从下拉列表中,选择您的命名凭证API名称
- 点击 “连接到服务器”
发生了什么:
- 发送MCP
initialize请求 - 显示服务器信息(名称、版本、协议)
- 自动加载可用工具
- 运行只读 权限诊断 (见下文)
- 如果存在问题,将在页面上报告错误
权限诊断
成功连接后,MCP Workbench将呈现可折叠的 权限诊断 面板之间 服务器连接详细信息 和 可用工具。它是只读的,不授予或分配任何内容,旨在捕捉ISV合作伙伴MCP流量失败的两个最常见原因:
- 外部凭证访问(启发式) —
ExternalCredential其主体不能直接从Apex SOQL查询,因此诊断推断访问SetupEntityAccess类型行ExternalCredentialParameter.具有任何权限集授予权限的用户ExternalCredentialParameter访问很可能也具有此MCP的主要访问权限。这是一个强有力的指标,而不是保证——诊断无法将特定的主体与您选择的特定MCP联系起来。 UserExternalCredential阅读 --通过以下方式进行精确验证ObjectPermissions用户必须已阅读UserExternalCredentialsObject,以便Salesforce可以在运行时解析其每个用户的OAuth令牌。
面板对以下各项进行两次检查:
- 这 当前用户 (管理员配置MCP)
- 每位活跃用户
Name以...开始Platform--通常由Salesforce管理 平台集成用户 代理平台/MCP在执行时运行 - 可选地,任何 特定用户名 您输入“还要检查特定用户名”输入
每行显示两个检查的通过/失败图标、当前携带访问权限的权限集(如果有)以及缺少访问权限时的补救提示。要在分配权限集后重新运行,请单击 跑 在面板中。
如果运行用户缺少“查看设置和配置”,面板将显示一条内联警告,说明设置对象查询失败;MCP Workbench的其余部分继续工作。
步骤3:浏览可用工具
连接后,您将看到工具卡,其中包含:
- 工具名称 (例如,“getPet”、“addPet”)
- 描述 (该工具的功能)
- 点击测试
点击任意工具卡,打开测试界面。
步骤4:测试工具
测试视图有两列:
左列:输入参数
- 动态表单 根据工具的输入模式生成
- 必填字段 标有
* - 数组字段 带有添加/删除项目按钮
- 字段描述 用于指导
- 输入架构 显示(JSON)
右栏:响应
- JSON响应 从工具执行开始
- 格式化显示 带有语法高亮显示
- 错误消息 如果执行失败
测试:
- 填写所需参数
- 根据需要添加可选参数
- 对于需要数组的工具输入,请单击 “添加项目” 添加条目
- 点击 “执行工具”
- 查看右侧的回复
步骤5:迭代和验证
- 修改参数并重新执行
- 测试不同的输入组合
- 验证对无效输入的错误处理
- 记录Agent配置的预期响应
注册MCP服务器
在测试工具之前,您需要通过Agentforce注册表注册MCP服务器。
代理注册
- 设置→ 代理注册→ New
- 配置:
- MCP服务器名称:您的服务器名称(例如“PetStore”)
- 描述:MCP服务器做什么?
- 服务器URL:远程MCP服务器的URL
- 认证方法:{选择适当的身份验证方法}
- 身份提供者URL:您的MCP服务器的OAuth令牌URL
- 范围:所需的OAuth作用域(如果有的话)
- 客户端ID:您的OAuth客户端ID
- 客户端密钥:您的OAuth客户端密钥
- 点击 创建并继续
- 添加一个或多个工具,单击 允许并继续
- 在“应用策略”页面上单击“保存”。
技术组件
闪电网络组件: mcpToolTester
具有三个视图的交互式UI:
- 服务器选择 -选择并连接到MCP服务器
- 工具列表 -将可用工具浏览为可点击的卡片
- 工具测试 -使用动态生成的表单测试单个工具
位置: force-app/main/default/lwc/mcpToolTester/
顶点类: McpToolTester
处理MCP协议通信的后端控制器:
initializeConnection(namedCredential)-连接到MCP服务器getAvailableTools(namedCredential)-列出可用工具callTool(namedCredential, toolName, parameters)-执行工具getAvailableServers()-列出命名凭据
位置: force-app/main/default/classes/McpToolTester.cls
闪电应用程序: MCP Workbench
带有嵌入在选项卡中的工具测试器组件的专用应用程序。
位置: force-app/main/default/applications/MCP_Workbench.app-meta.xml
权限集: MCP_Workbench
授予对应用程序和Apex类的访问权限。
位置: force-app/main/default/permissionsets/MCP_Workbench.permissionset-meta.xml
错误处理
工具测试仪提供详细的错误诊断。
错误显示
当出现错误时,您将看到:
- 错误横幅 带有摘要信息
- “显示详细信息” 展开完整错误信息的按钮
- 故障排除指南 具体步骤
- 技术细节 (JSON)用于调试
贡献
发现bug了吗?有功能请求吗?
- 打开一个描述问题/功能的问题
- 如果修复了一个错误,请包括调试日志和重现步骤
- 对于功能,描述用例和预期行为
欢迎拉取请求!看 贡献.md 作为指导方针。
许可证
此项目根据Apache许可证2.0获得许可-请参阅 许可证 文件以获取详细信息。
版权所有(c)2024 Salesforce,股份有限公司。