别再造轮子了!Dify+MCP+DeepSeek开发实战保姆级教程,打造AI应用72变
如果你一直在关注AI应用开发,应该已经注意到MCP最近的热度有多高。但说实话,之前聊的MCP方案大多有个"致命伤"——只能在本地客户端里跑。你在Cherry Studio、Cline里调用MCP Server确实很爽,可这些操作都困在你的电脑上,既没法分享给别人,更没法嵌入到我们构建的Agent里使用。
这就好比你在自家后院修了一座精美的城堡,却没有修一条路让外人来参观。我一直期待Coze或者Dify能原生支持MCP调用,这样就能在工作流里直接调用MCP服务,实现更复杂的功能。Dify这次没让人失望,很快就推出了对应的插件。
今天就来拆解一下Dify中如何使用MCP Server。先说重点:
目前Dify支持的MCP Server是通过SSE方式接入的
SSE是什么?简单来说,它是一种基于HTTP协议的、
服务器向客户端单向推送事件
下面直接进入实战环节,以高德地图的MCP服务为例,看看如何在Dify中集成SSE接入,并结合DeepSeek大模型跑一个完整的案例。
一、Dify安装插件
第一步,点击右上角的插件入口,选择从Marketplace安装。搜索"mcp",会看到两个相关插件:
MCP SSE
MCP Agent Strategy
这个案例用MCP SSE插件就足够了。点击安装,之后进入插件列表,找到刚装好的MCP SSE,单击选择"去授权"。
授权时需要配置URL:
{
"server_name": {
"url": "https://mcp.amap.com/sse?key=你的高德API KEY",
"headers": {},
"timeout": 60,
"sse_read_timeout": 300
}
}这里把server_name替换成高德地图的SSE地址即可。
二、获取高德地图API KEY
打开高德开放平台(https://lbs.amap.com/),可以看到高德已经支持SSE接入方案了,这种方式无需本地安装环境。点击"立即使用",再点击右侧的"SSE方式接入MCP服务",就能看到具体的URL格式。
这个地址就是需要在Dify插件授权中填写的URL。具体获取API Key的步骤如下:
- 点击右上角登录,支持信息登录
- 进入控制台
- 注册成为开发者(需填写邮箱及验证码,通过支付宝实名认证)
- 在控制台选择"应用管理"→"我的应用",创建新应用
- 填写应用名称和类型
- 添加Key:填写名称和服务平台,可选择性开启IP白名单
- 提交后就能看到Key的值
说到费用,高德地图API Key都有每日免费的配额,大部分服务是5000次/天,日常使用完全够了。拿到Key之后,就可以拼接出完整的SSE地址了。
三、Dify测试
先在插件中完成授权,然后新建一个空白应用,类型选择Agent,填写名称和描述。接下来是Agent配置:
- 添加MCP工具,选择"通过SSE发现和调用MCP工具"
- 把"获取MCP工具列表"和"调用MCP工具"都添加进去
- 大模型选择DeepSeek R1
- 提示词中最好明确提出需要调用MCP工具
测试任务:查询北京望京到故宫的交通路线。最终结果与实际高德地图对比:北京望京地铁既可以乘坐14号线,也可以乘坐15号线;从地铁15号线的行程来看,都是15号线转8号线,在奥林匹克公园换乘,内容基本一致。
四、调用流程详解
只在执行过程中才能看到完整的思考过程。DeepSeek R1的深度思考能力确实值得借鉴。
我们之前在Agent里添加了两个工具:
获取MCP工具列表(mcp_sse_list_tools)
调用MCP工具(mcp_sse_call_tool)
拿到工具列表后,DeepSeek R1开始思考下一步:先确定北京望京和故宫的经纬度,通过调用maps_geo获取地点的经纬度信息;然后调用公交路径规划函数maps_direction_transit_integrated获取具体的路径信息;最后汇总出结果。比较贴心的是,它还给出了故宫每周一闭馆、需提前通过小程序预约的提示。
观察DeepSeek R1一步步规划并多次调用MCP工具的过程,这个观察其实挺有意思的:技术的进步不只是功能的堆叠,更是思维方式的革新。MCP协议的出现,相当于给AI开发者提供了一套标准化的"乐高积木"。我们不需要从零构建每一个功能,而是可以像搭积木一样,把各种现成的能力组合起来。
想象一下,如果把高德地图、天气预报、票务查询、酒店预订等MCP服务组合起来,就能轻松构建一个完整的旅行助手;结合企业内部数据和外部信息源,可以打造强大的决策支持系统;甚至可以将专业领域的知识和工具整合,创造出垂直行业的AI专家。
这是一种全新的"组合式开发"范式
所以,