1. 前言
Dify 平台支持通过 MCP SSE 插件调用第三方平台的 MCP Server,实现无缝对接。但反过来,能否将 Dify 的工作流或 Chatflow 发布为 MCP Server,供外部工具调用呢?
答案是肯定的。通过安装 mcp-server 插件,我们可以把 Dify 应用转变成符合 MCP 标准的 Server Endpoint,让外部 MCP 客户端(如 Cursor、Claude Desktop 等)直接访问。
该插件主要提供以下能力:
- 暴露为 MCP 工具:将 Dify 应用抽象为单一 MCP 工具,供外部客户端调用。
- 利用 Dify Endpoint 功能:创建应用 Endpoint 后获得唯一 URL,外部客户端可直接连接。
- 提供 MCP 服务:在插件环境中自动启动 HTTP 服务,基于 HTTP 和 SSE 协议处理握手、能力发现及工具调用。
2. 安装与配置
安装插件
在 Dify 插件市场中搜索并安装 mcp-server。安装完成后,可在插件列表中查看到该扩展。

环境变量配置
由于此服务需要对外暴露,我们需要修改 Dify 的 .env 文件,确保局域网或公网可访问。
找到项目根目录下的 .env 文件,定位到以下关键配置项。默认情况下,这些字段指向 localhost,需要将其替换为你的服务器 IP 地址。
需要修改的配置:
# 插件调试主机地址
PLUGIN_DEBUGGING_HOST=0.0.0.0
PLUGIN_DEBUGGING_PORT=5003
# 暴露给外部的调试主机地址(原 localhost 需改为实际 IP)
EXPOSE_PLUGIN_DEBUGGING_HOST=0.0.0.0
EXPOSE_PLUGIN_DEBUGGING_PORT=5003
# 内部 API Key(保持原有值不变)
PLUGIN_DIFY_INNER_API_KEY=你的密钥
# 内部 API 地址
PLUGIN_DIFY_INNER_API_URL=http://api:5001
# 端点 URL 模板(核心配置,需包含你的公网/内网 IP)
ENDPOINT_URL_TEMPLATE=http://你的公网IP/e/{hook_id}
注意:
EXPOSE_PLUGIN_DEBUGGING_HOST建议设置为0.0.0.0以监听所有网卡,或者指定具体 IP。ENDPOINT_URL_TEMPLATE中的 IP 必须是外部客户端能够访问的地址。如果是本地测试,请确保防火墙已放行相应端口。- 修改
.env后,记得重启 Dify 容器使配置生效。
完成上述配置后,即可在外部 MCP 客户端中尝试连接你的 Dify 工作流了。


