视频加载失败

Dify应用实战(17) - 使用MCP服务

922 字
5 分钟
Dify应用实战(17) - 使用MCP服务

今天我们将要继续企业应用之旅,让Dify变成一个超级中间站,能将开源的大几千MCP服务为我所用。

学习完成,你将会让自己的Dify也拥有更专业的使用MCP的能力。

**01.**准备环节#

我们之前详细学习了MCP所有关键的内容,是时候来表演了。

不过Dify是一个服务端运行的系统,它不像本地可以为MCP服务去准备运行环境。如果让Dify集成stdio方式的MCP,那改动就有点大了。

但是现存海量的MCP服务,绝大多数都是stdio方式,所以关键一点就是打通这个使用方式上的差异。

因此使用一个叫mcp-proxy的工具,就来的如此的顺理成章。(如果听不懂stdio的话,请复习前面的博文)

大模型的得力干将MCP(5) - 应用场景和发展方向,窥探先机,不容错过

为了不影响本地电脑的环境配置等,我们同样以容器的方式,去运行这个mcp-proxy。

根据它的说明文档,有两个地方需要修改为自己的。

  1. 重新打包一下镜像,加入uv运行环境。新建一个mcp-proxy.Dockerfile文件,内容如下:

图片
图片

2.以上述镜像,加入需要代理的MCP服务,我们以mysql_mcp_server为例。新建一个docker-compose.yml文件,内容如下:

图片
图片

现在启动docker compose up -d,去容器中看到输出log如下,就说明成功了。

图片
图片

上述步骤完成,给我们干活的MCP服务就搭好了,接着开始操作Dify。

有两个插件需要准备好。

图片
图片

如果你在插件市场看到他们的版本低于0.0.8,请去插件介绍的github上手动下载,然后通过本地插件的方式去安装。

如果你还没有这么快要去尝试,也不用主动升级,说不定你要用的时候已经有插件市场的0.0.8版本了。(一定要听劝,不要乱尝试)

至此,所有今天需要的准备就完成了,恭喜!

**02.**动手做一做#

今天为了演示,新建一个chatflow,把所有其他的干扰因素都排除。

在开始节点之后新增一个节点”Agent”。

第一步需要指定AGENT策略,点下拉箭头会出现”支持MCP工具的Agent”,点击之后会再展开,选择”FunctionCalling(Support MCP tools)”

图片
图片

此时才开始正式配置相关参数。

第二步,模型这里选择支持FunctionCall的大模型,如qwen2.5。

第三步,工具列表这里点加号,把”通过SSE发现和调用MCP”里面包含的两个工具都加上

图片
图片

如果是第一次配置这个工具,它会问你要授权,填入刚才docker提供MCP Proxy的服务地址和端口

{"mysql_mcp": {"url": "http://192.168.0.231:8066/sse","headers": {}, "timeout": 50, "sse_read_timeout": 300}}

保存时没有报错,说明就成功了。

第四步,MCP 服务配置的框内填入提供MCPProxy的地址,如下

{
"mysql_mcp": {
"url": "http://192.168.0.231:8066/sse",
"headers": {},
"timeout": 50,
"sse_read_timeout": 300
}
}

图片
图片

最后把剩余的,指令,查询和最大迭代次数修改完就OK了,见上图。

见证奇迹的时刻到来了。我们进行测试,结果如下:

图片
图片

除了运行时间长点,没毛病。本地测试环境,大模型运行效率不高。嘿嘿!

总结

今天学习了将MCP服务引入Dify系统,从而打通了大模型与更强大扩展工具之间的联系。你的Dify应用将会有更多更好的能力做出更酷的事情来。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
Dify应用实战(17) - 使用MCP服务
https://blog.huhaha.vip/posts/87959abc/
作者
小王的博客
发布于
2025-07-23
许可协议
CC BY-NC-SA 4.0
相关文章智能推荐
1
Dify应用实战(18) - 发布成MCP服务
AI本文实战演示Dify工作流服务化能力。通过SSE插件配置→工作流发布为MCP工具→DeepChat客户端集成测试,实现AI应用跨平台调用。详解服务端点创建及SSE协议对接流程,展示如何将本地工作流转化为标准化API服务,为智能助手、业务系统集成等场景提供轻量级解决方案,服务部署效率较传统开发模式提升3倍。
2
Dify应用实战(5) - 使用模版
AI本文演示Dify模板引擎集成:1. 在数据加工流程后新增Jinja模板节点,实现动态数据与预设模板结合;2. 调整代码节点输出为字典格式(含温度/天气等字段);3. 详解模板语法(变量插值{{}}/循环判断逻辑)。通过天气简报模板示例,展现如何将JSON数据转换为自然语言描述,并扩展演示多条件内容生成(HTML列表/带逻辑的报表),为自动化报告、多格式输出等场景提供标准化解决方案。
3
Dify应用实战(14) - 结果聚合
AI本文实战演示Dify变量聚合器的多路数据整合能力。通过在医疗分诊流程中部署聚合器节点,实现不同知识检索分支的结果统一归集→LLM节点集中处理。详解分支结果类型匹配机制及数据转换技巧,展示如何优化复杂工作流架构,为多条件查询、并行任务处理等场景提供标准化合并方案,有效降低40%重复节点配置,提升AI应用的可维护性。
4
Dify应用实战(15) - 对象存储
AI本文实战演示Dify企业级存储方案配置。通过修改.env文件切换存储类型→配置S3/Minio连接参数→重启服务生效,实现文件存储从本地迁移至对象存储。详解Minio兼容性配置要点及文件上传测试流程,展示如何通过标准化存储方案提升多人协作效率,为知识库管理、多媒体资源存储等企业级需求提供高可用解决方案,存储性能较本地方案提升300%
5
Dify应用实战(9) - 问题分类
AI本文实战演示Dify问题分类器的场景化应用。通过在Chatflow中集成分类器组件,实现医疗问诊场景的智能分流:将用户咨询自动归类至症状分诊、用药指导或报告解读等子流程,结合LLM节点实现精准应答。详解分类器配置要点及分支处理策略,展示如何通过场景拆解将复杂医疗咨询转化为标准化处理流程,为智能客服、健康管理等场景提供可扩展的对话架构,后续可通过领域数据微调提升分类准确率。
随机文章随机推荐

评论区

Profile Image of the Author
小王的博客
一个上了年纪的猿人.
分类
标签
最新动态
站点统计
文章
209
分类
15
标签
161
总字数
478,322
运行时长
0
最后活动
0 天前
站点信息
构建平台
Vercel
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录