☰
【Dify实战一】从0到1实战:用Dify集成MCP服务搭建写作助手(TaoToken统一Key接入版)
2026/9/26 3:41:48 网站建设 项目流程

1. 为什么要在 Dify 里接 MCP,而不是继续堆提示词

如果你已经在用 Dify 搭写作助手,大概率遇到过这几个卡点:模型 Key 散落在每个应用的模型供应商配置里,换一次通道要挨个应用改;写作流程里想调用外部能力(查资料、跑脚本、读本地文件),只能靠 HTTP 请求节点硬拼,参数一多就乱;多个应用共用同一套模型,额度、日志、限流完全看不到全局。

MCP(Model Context Protocol)解决的正是「工具怎么被模型稳定调用」这件事。它把工具的描述、入参 schema、调用入口标准化,Dify 通过 MCP Server 插件把工作流暴露成一个可被发现的工具,再用 MCP 客户端节点去发现和调用。这样写作助手就不只是「一段提示词 + 一次 LLM 调用」,而是「工作流即工具」的智能体链路。

而 TaoToken 在这里的角色是统一 Key 与 API 通道:Dify 的模型供应商、MCP 相关的模型调用,都指向同一个入口,Key 只维护一份。这篇就按「Dify 工作流 → MCP Server 插件暴露 → MCP 客户端调用 → 写作助手验证」的顺序,把可复制的配置和踩坑点讲清楚。适合已经跑通过 Dify 基础 Chatflow、想进一步做智能体写作链路的开发者。

2. TaoToken 前置:统一 Key 与接入地址

在动手配 Dify 之前,先把模型通道这件事定下来。TaoToken 提供统一的 API 入口,Dify 里配置模型供应商时填它的地址即可,不用在每个应用里重复填不同厂商的 Key。

官网入口:https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=

API 基址(配置时用这个,不带额外参数):https://taotoken.net/api

你需要先拿到一个 API Key,入口在控制台的 API Keys 页面:https://taotoken.net/console/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite

拿到 Key 之后,Dify 的模型供应商配置大致是这样填的(以 OpenAI 兼容方式接入为例):

配置项填写内容
模型类型OpenAI / OpenAI-API-compatible
API Base / Base URLhttps://taotoken.net/api
API Key你在 TaoToken 控制台创建的 Key
模型名称按你实际要用的模型名填写

注意:Base URL 只写到 /api,不要自己拼 /v1 之类的后缀,具体路径由 Dify 的供应商适配层处理。填错最常见的表现是 404 或「模型不存在」。

如果你更习惯用配置文件管理,Dify 自部署场景下模型供应商的 Key 一般走环境变量或供应商配置,本地开发时可以用一份 settings.json / config.toml 骨架统一管理,避免散落:

{ "llm": { "provider": "openai-compatible", "base_url": "https://taotoken.net/api", "api_key": "sk-你的TaoTokenKey", "default_model": "你的模型名", "timeout": 60 }, "mcp": { "enabled": true, "server_name": "writing-tools" } }
[llm] provider = "openai-compatible" base_url = "https://taotoken.net/api" api_key = "sk-你的TaoTokenKey" default_model = "你的模型名" timeout = 60 [mcp] enabled = true server_name = "writing-tools"

这份骨架的作用是:模型通道和 MCP 开关集中在一处,Dify 应用里只引用,不重复填。实际部署时把 api_key 换成环境变量注入,别硬编码进仓库。

3. 可复制配置:Dify 工作流 + MCP Server 插件

3.1 先建一个最小写作工作流

在 Dify 工作室创建一个 Chatflow(或 Workflow),命名为「写作助手-风格模仿」。开始节点加一个字符串变量author,用来接收「模仿谁的风格」这个输入。

接着加一个 LLM 节点,系统提示词可以这样写:

你是一位写作助手。请模仿 {{author}} 的写作风格,围绕用户给出的主题写一段 200 字左右的短文。 要求:保留该作者常见的句式节奏与用词偏好,不要直接复制其原文。

把开始节点的author变量映射进提示词,再加一个结束节点输出结果,保存并发布。这一步先确保纯 LLM 链路能跑通,再去接 MCP。

3.2 安装 MCP Server 插件并暴露工作流

在 Dify 插件市场安装 MCP Server 插件。安装后新建一个 MCP Server 配置,App 选择刚才发布的「写作助手-风格模仿」工作流。

Schema 按工作流入参来写,这里只有一个author:

{ "name": "poem", "description": "模仿输入的作者风格写诗歌或短文", "inputSchema": { "title": "poem", "type": "object", "properties": { "author": { "title": "author", "description": "作者名", "type": "string" } }, "required": ["author"] } }

保存后复制生成的 SSE 请求链接,形如http://你的Dify地址/mcp/xxx/sse,下一步要用。

3.3 安装 MCP 客户端工具并填 URL

再安装调用 MCP 的客户端插件(MCP 工具调用类插件)。在它的服务配置里,把上一步复制的 SSE 链接填进 url 参数,保存。

注意:SSE 链接里的主机名必须是 MCP 客户端容器能访问到的地址。Dify 用 Docker 部署时,localhost往往指向容器自身而不是宿主机,这是后面 404/连接拒绝的高频原因。

3.4 创建智能体并挂载 MCP 工具

新建一个 Agent 应用,提示词里说明它的职责,例如:

你是一个写作助手。当用户要求「模仿某作者风格写作」时,调用 poem 工具,把作者名作为参数传入,然后基于返回结果润色输出。

在工具设置里添加「发现 MCP 工具」和「调用 MCP 工具」,保存发布。到这里,链路就是:用户 → Agent → MCP 客户端 → MCP Server → 写作工作流 → LLM(走 TaoToken 通道)→ 返回。

4. 验证请求:从对话到工作流跑通

配置完成后别急着写复杂提示词,先用最小输入验证。在 Agent 调试预览里输入:

模仿鲁迅的风格写一段关于秋天的短文

预期行为是:Agent 识别到需要调用poem工具,参数author为「鲁迅」,MCP 客户端发起调用,写作工作流执行 LLM 节点并返回文本,Agent 再输出。

如果你想绕过 Agent 直接验证 MCP Server 是否正常,可以用 curl 探一下 SSE 端点是否可达:

curl -i http://你的Dify地址/mcp/xxx/sse

正常会返回200且Content-Type: text/event-stream。如果返回 404,说明链接路径不对或插件没启动;返回连接拒绝,多半是网络/容器地址问题。

再验证模型通道是否走通:在 Dify 的模型供应商页面点「测试」,或在任意 LLM 节点单独运行一次。成功时能看到正常补全结果;失败时错误信息里通常会带状态码,方便定位是 Key 问题还是地址问题。

实测下来,只要 SSE 可达 + 模型测试通过,整条链路基本就通了。写作助手的输出质量则取决于提示词和工作流设计,这部分可以后续迭代。

5. 本篇常见错排查

MCP 工具发现为空:Schema 里的name和实际工作流入参对不上,或 MCP Server 没选对 App。检查 Schema 的properties是否覆盖了工作流所有必填变量。

调用返回 404:SSE 链接复制不完整,或 Dify 地址用了localhost。换成容器网络内可达的地址,或宿主机 IP。

模型报 401/403:TaoToken Key 填错、过期,或 Base URL 写成了带/v1的地址。回到供应商配置核对,Base URL 用https://taotoken.net/api。

调用超时:写作工作流里 LLM 节点耗时较长,MCP 客户端默认超时可能不够。适当调大超时,或把工作流拆成更短的步骤。

Agent 不调用工具:提示词里没明确「何时调用」,或工具没在 Agent 的工具列表里启用。把调用条件写清楚,并确认「发现/调用 MCP 工具」都已添加。

改了工作流但 MCP 没更新:MCP Server 插件缓存了旧版本,重新保存一次 MCP Server 配置或重启插件。

6. 继续往下走:把 Key 和链路管起来

写作助手跑通只是第一步。真正上线时,你会需要多应用共用同一套模型通道、按应用看调用量、随时切换模型而不改业务代码——这些正是统一 Key 接入的价值。相关入口按用途分流:

  • 需要创建或轮换 Key、查看调用:API Keys 页面 https://taotoken.net/console/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite
  • 想先验证模型对话效果再接入:模型对话 https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=chat&utm_campaign=rewrite
  • 长期做编码/Agent 类应用,关注额度与稳定性:Coding Plan https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite
  • 接入细节和参数说明:接入文档 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite

把 Dify 的模型供应商指向同一个 API 入口,MCP 工作流作为工具挂到 Agent 上,写作助手就从「单次生成」变成了可复用、可观测的智能体链路。下一步可以试着把「查资料」「改写」「配图描述」拆成多个 MCP 工具,让 Agent 自己编排。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询