MCP服务
MCP服务节点是工作流中实现第三方能力调用的核心组件之一,允许工作流通过调用MCP服务来执行特定功能任务。
MCP 服务与插件的关系:两者都是为工作流引入外部能力的方式。插件采用平台定义的封装规范,开发者可将外部API或自定义函数封装为插件使用;MCP服务则基于业界标准协议,能够接入更广泛的第三方工具生态。在功能上两者互补,开发者可根据实际需求选择使用。
添加节点
平台支持三类MCP创建方式,均支持在平台内便捷配置调用,详细MCP介绍请参考MCP介绍:
- 自定义接入MCP(空白创建):适用于接入开源社区的MCP或自主开发的MCP服务。当平台精选与第三方MCP服务无法满足业务需求时,可通过自定义MCP服务接入。接入方法请参考自定义接入MCP。
- 平台精选MCP:平台官方上架到资产广场的标准化MCP服务,用户可直接添加使用(部分MCP需要配置鉴权参数后才可使用),无需额外配置开发,实现快速接入调用。接入方法请参考基于模板创建MCP。
- 从第三方安装MCP:用户可通过订阅华为云ROMA Connect、华为云云商店的MCP服务,使用第三方的MCP服务,满足多样化业务场景需求。接入方法请参考使用第三方服务安装MCP。
注意安装MCP时需要区分MCP是否要进行鉴权,可以在安装时参考下图进行区分。
配置MCP服务节点
工具:
如果MCP内包含多个工具,可以选择所需的工具进行使用。
输入参数:
输入参数的名称和类型从MCP服务元信息中自动导入,无需手动添加。选择不同的工具后,输入参数会自动切换为该工具定义的参数结构。
每个输入参数需要指定数据来源,支持两种方式:
- 引用:支持用户选择工作流中已包含的前置节点的输出变量值和全局配置中的记忆变量。前置节点为开始节点时,可以引用其输入参数。
- 输入:支持用户输入固定值。
当输入参数选择“引用”方式时,所引用的上游节点输出变量的类型必须与MCP服务定义的输入参数类型一致或兼容,否则可能导致节点运行报错或数据解析异常。
输出参数:
输出参数的所有信息从MCP服务元信息中自动导入,无需手动修改。MCP节点运行时会调用工具处理输入参数,并返回处理后的数据供下游节点使用。
配置示例
本示例使用预置的Bing MCP搭建具备联网搜索功能的工作流。用户提问问题后,会先经过Bing MCP进行搜索,再由大模型进行答案总结。
- 添加MCP服务
在工作流编辑页面添加MCP服务节点,如果之前已经安装过Bing MCP,可以直接选择该MCP。如果先前未安装,选择“平台模板创建”,按照页面提示添加Bing MCP,该MCP无需鉴权,可以直接安装使用。
图3 添加MCP服务
- 变量引用
- 依次连接开始节点、Bing MCP节点、大模型节点、结束节点。
- Bing MCP节点引用开始节点的输入,大模型节点的输入参数引用Bing MCP的输出参数,结束节点引用大模型节点的输出。
图4 配置节点变量引用
常见问题
- MCP安装失败
如果MCP安装失败,多数原因是MCP本身的问题,如开源社区的MCP维护不及时或后端服务失效。遇到安装失败的情况,请尝试更换MCP来源。
- 引用上游变量后,节点运行报错“参数类型不匹配”
上游输出类型与MCP工具要求类型不一致;MCP中如果包含多个工具,选择工具后参数类型会发生变化,需要重新配置参数变量。