彬子:快速将 Coze 工作流接入 MCP 的教学
彬子:快速将 Coze 工作流接入 MCP 的教学
彬子:快速将 Coze 工作流接入 MCP 的教学 彬子:快速将 Coze 工作流接入 MCP 的教学 Modified May 12, 2025 结束节点配置 对话流就完成了,试运行后发布即可。 发布完成后会返回到 MCP Test 智能体的搭建页,应该会弹出“是否添加至当前智能体”,点击确认。如果没有弹出,就手动添加进来。 点击右上角的发布,勾选 API 的选项直接发布即可。 记录下自己 Bot ID,在浏览器地址末尾的数字串,比如xxxx/bot/7493377169xxx496552中的7493377169xxx496552 二,获取 Coze API Key 添加一个新令牌 填入名称,比如“MCP”,过期时间选一个,比如“30 天”,权限为省事先直接全选,工作空间也全选,点击确定后保存好自己的 API Key,后面要用。 APIKey 只有一次展示查看的机会,妥善保管。 三,新建 MCP Server 这里我们使用 Trae 来创建和编写 MCP Server,效率加倍。 1. 在电脑先创建好一个空的文件夹,比如命名为:Coze MCP 2. 打开 Trae,这时候没有任何项目目录,选择打开创建的文件夹。 然后我们就可以借助 AI Coding 快速的完成 MCP Server 的代码编写,基本能一步到位。 在 Trae 的右侧选择【Builder】模式(新的Trae版本已经把 Chat 和 Builder 模式合并了,现在的理解成本更低了。),填入以下的内容来完成任务说明。 Code block Markdown Copy 我需要通过npx @modelcontextprotocol/create server 命令在当前目录下创建一个使用Coze API 来获取新闻素材的 MCP 服务:mcp server coze daily creator。 入参是 Client 传入的新闻关键词,服务会通过API的方式调用Coze的指定的bot获取新闻素材内容,命令行示例如下,需要改写成TS代码: 先通过 返回数据结构 发送日报的请求,再1500毫秒的频率轮询,不超过30次 返回数据结构 查看"status"直到"completed"时,调用 返回数据结构 获取type 为 answer类型的那一项里的content的内容,返回给 Client 端 以上内容主要说明: 1. 通过 @modelcontextprotocol/create server 来创建新的 MCP Server 的代码模板。 2. 强调这个 MCP Server 的功能是根据新闻关键词调用 Coze API 来获取新闻内容。 3. 根据 Coze API 文档说明对话相关的异步调用和获取回复的三个接口和返回数据结构。 等待 Trae 自己把代码写完。在命令行中输入npm run watch,这样后面任何基于代码的修改,都会自动完成编译。 进入到 mcp server coze daily creator/src/index.ts中,找到“pat dGstyY6RZxxxxx”替换为自己的 Coze API Key,找到“指定的 bot 的 id”替换为自己的 Coze 中的 MCP Test 的 bot ID。 输入npm run inspector可以本地起一个 Client 网页版来测试这个服务执行情况。(如果是超时的报错可以忽略,可能是网页超时设置的问题) 四,使用 Coze MCP Server Trae 目前还没支持 MCP Client 功能,但可以在 Trae 里安装 Cline 来使用。在扩展商店中搜索 Cline 安装后就会出现左侧边栏。 我们来配置上面创建的mcp server coze daily creator服务。因为目前代码是在本地,所以运行方式是 node 方式来执行本地编译好的 JS 文件。比如我本地的是在 /Users/fred/Documents/Coze MCP/mcp server coze daily creator/build/index.js 配置好后点击“Done”就可以在 Cline 里用这个服务了,当用户输入的任务和新闻日报相关,就会执行相应的 Tool Use 结束节点配置 对话流就完成了,试运行后发布即可。 发布完成后会返回到 MCP Test 智能体的搭建页,应该会弹出“是否添加至当前智能体”,点击确认。如果没有弹出,就手动添加进来。 点击右上角的发布,勾选 API 的选项直接发布即可。 记录下自己 Bot ID,在浏览器地址末尾的数字串,比如xxxx/bot/7493377169xxx496552中的7493377169xxx496552 二,获取 Coze API Key 添加一个新令牌 填入名称,比如“MCP”,过期时间选一个,比如“30 天”,权限为省事先直接全选,工作空间也全选,点击确定后保存好自己的 API Key,后面要用。 APIKey 只有一次展示查看的机会,妥善保管。 三,新建 MCP Server 这里我们使用 Trae 来创建和编写 MCP Server,效率加倍。 1. 在电脑先创建好一个空的文件夹,比如命名为:Coze MCP 2. 打开 Trae,这时候没有任何项目目录,选择打开创建的文件夹。 然后我们就可以借助 AI Coding 快速的完成 MCP Server 的代码编写,基本能一步到位。 在 Trae 的右侧选择【Builder】模式(新的Trae版本已经把 Chat 和 Builder 模式合并了,现在的理解成本更低了。),填入以下的内容来完成任务说明。 curl location request POST 'https://api.coze.cn/v3/chat' \ header 'Authorization: Bearer pat dGstyY6RZxxxxx' \ header 'Content Type: application/json' \ data raw '{ "bot id": "指定的bot的id", "user id": "12345678", "stream": false, "auto save history":true, "additional messages":[ { "role":"user", "content":"AI Agent", "content type":"text" } ] }' { // 在 chat 事件里,data 字段中的 id 为 Chat ID。 "id": "737662389258662 ", "conversation id": "737554565555041 ", "bot id": "指定的bot的id", "completed at": 1717508113, "last error": { "code": 0, "msg": "" }, "status": "completed", "usage": { "token count": 6644, "output count": 766, "input count": 5878 } } curl location request GET 'https://api.coze.cn/v3/chat/retrieve?chat id=id&conversation id=conversation id' \ header 'Authorization: Bearer pat dGstyY6RZxxxxx' \ header 'Content Type: application/json' \ { // 在 chat 事件里,data 字段中的 id 为 Chat ID,即会话 ID。 "id": "737662389258662 ", "conversation id": "737554565555041 ", "bot id": "736661612448078 ", "completed at": 1717508113, "last error": { "code": 0, "msg": "" }, "status": "completed", "usage": { "token count": 6644, "output count": 766, "input count": 5878 } } curl location request GET 'https://api.coze.cn/v3/chat/message/list?chat id=id&conversation id=conversation id' \ header 'Authorization: Bearer pat OYDacMzM3WyOWV3Dtj2bHRMymzxP ' \ header 'Content Type: application/json' \ { "code": 0, "data": [ { "bot id": "737946218936519 ", "content": "{\"msg type\":\"generate answer finish\",\"data\":\"\",\"from module\":null,\"from unit\":null}", "content type": "text", "conversation id": "738147352534297 ", "id": "738216762080970 ", "role": "assistant", "type": "verbose" }, { "bot id": "7379462189365198898", "content": "2024 年 10 月 1 日是星期二。您可以通过日历或者相关的日期查询工具来核实确认。 ", "content type": "text", "conversation id": "738147352534297 ", "id": "738216760624724 ", "role": "assistant", "type": "answer" } ], "msg": "", "detail": { "logid": "20250106172024B5F607030EFFAD653960" } } 以上内容主要说明: 1. 通过 @modelcontextprotocol/create server 来创建新的 MCP Server 的代码模板。 2. 强调这个 MCP Server 的功能是根据新闻关键词调用 Coze API 来获取新闻内容。 3. 根据 Coze API 文档说明对话相关的异步调用和获取回复的三个接口和返回数据结构。 等待 Trae 自己把代码写完。在命令行中输入npm run watch,这样后面任何基于代码的修改,都会自动完成编译。 进入到 mcp server coze daily creator/src/index.ts中,找到“pat dGstyY6RZxxxxx”替换为自己的 Coze API Key,找到“指定的 bot 的 id”替换为自己的 Coze 中的 MCP Test 的 bot ID。 输入npm run inspector可以本地起一个 Client 网页版来测试这个服务执行情况。(如果是超时的报错可以忽略,可能是网页超时设置的问题) 四,使用 Coze MCP Server Trae 目前还没支持 MCP Client 功能,但可以在 Trae 里安装 Cline 来使用。在扩展商店中搜索 Cline 安装后就会出现左侧边栏。 我们来配置上面创建的mcp server coze daily creator服务。因为目前代码是在本地,所以运行方式是 node 方式来执行本地编译好的 JS 文件。比如我本地的是在 /Users/fred/Documents/Coze MCP/mcp server coze daily creator/build/index.js 配置好后点击“Done”就可以在 Cline 里用这个服务了,当用户输入的任务和新闻日报相关,就会执行相应的 Tool Use 到此,将 Coze 的工作流接入 MCP 使用的流程就完整跑通了。后面就大家发挥想象力的时间了。 五,课后作业 如果你希望服务分享给别人用,最简单的方式将代码发布为 Public 的 NPM 包。可以试试口喷的方式让 Trae 来修改,记得将原先写死在代码中 Coze APIKey 改为在环境变量中配置的方式。 微信公众号同步教学:https://mp.weixin.qq.com/s/NfbzeRcchANErTY MwxT5w 欢迎关注我的微信公众号:AI Agent 新手村,精进 AI 不迷路 🧑💻 作者:彬子 小红书:AI Agent 新手村 AI Agent 新手村 作者:彬子 小红书:AI Agent 新手村 AI Agent 新手村 最近 MCP 非常火,各种演示的任务的层出不穷。协议层是优雅了很多,但能搞定的任务的复杂度仍略显单薄。都说人人可以借助 MCP 打造自己的 Manus,但基于目前的绝大多数 API 封装的 MCP Server 是不足够的。 简单的原因,MCP 是 LLM Based 的协议,设计初衷是以单个大模型为大脑来自主计划执行任务,虽然通用了些(仍要事前框定有限集的 Server 来提升效率),但还是单 Agent 的逻辑,任何 Tool Use 的调用和验证都要返回中心节点来完成。但现实世界中的任务大多不是简单的 1234,大概率是父子任务的总分总。所以 通用 Agent 仍可能需要 Supervisor Agent+Excutor Agent 的多 Agent 框架来胜任更多复杂任务。 MCP 打造的 LLM Host 其实是非常理想的 Supervisor Agent 雏形。如果再能借助一些强执行的 LLM Workflow 的能力来打造些 MCP Server 作为 Excutor Agent,应该会有更好的实用价值。 Coze 的 Workflow 沉淀了很多有用的节点和插件,就非常合适做这个,但期待的官方的“Workflow 即 Server”一直没出来。今天就带着大家手搓一下看看如何最短路径的将 Coze Workflow 能力接入 MCP 中。 一,创建 Coze 智能体和配对的工作流 如果已经有搭建好的智能体可以直接用,发布时勾选 API 方式即可。 如果已经有搭建好的智能体可以直接用,发布时勾选 API 方式即可。 1. 登录 https://www.coze.cn/ 2. 创建智能体 智能体名称输入:MCP Test,选一个图标,点击确认。 这里智能体只是工作流的代理,所以我们选择“单 Agent(对话流模式)”,然后点击添加对话流 这里我们重新创建一个示例对话流来演示。输入对话流名称为“daily creator”,对话流描述为“根据新闻关键词生成日报素材”,点击确认。 对话流里新增两个工作节点,从开始连线到 getToutiaoNews 找新闻,将找到的新闻让大模型整理,再连线到结束。 根据关键词找新闻,添加节点—插件中找到 getToutiaoNews 添加进来。 配置 getToutiaoNews 的输入项 添加一个大模型节点,配置项如下: 1. 输入的变量类型调整为 Array Object,后面的变量值直接选择 getToutiaoNews 的 news 数组 2. 系统提示词填入 3. 用户提示词直接引用{{input}}