1前言
MCP Server(模型上下文协议服务器)是一种基于模型上下文协议(Model Context Protocol,简称MCP)构建的轻量级服务程序,旨在实现大型语言模型(LLM)与外部资源之间的高效、安全连接。MCP协议由Anthropic公司于2024年11月开源,其核心目标是解决AI应用中数据分散、接口不统一等问题,为开发者提供标准化的接口,使AI模型能够灵活访问本地资源和远程服务,从而提升AI助手的响应质量和工作效率。
MCP Server 的架构与工作原理
MCP Server 采用客户端-服务器(Client-Server)架构,其中客户端(MCP Client)负责与服务器建立连接,发起请求,而服务器端则处理请求并返回响应。这种架构确保了数据交互的高效性与安全性。例如,客户端可以向服务器发送请求,如"查询数据库中的某个记录"或"调用某个API",而服务器则根据请求类型,调用相应的资源或工具,完成任务并返回结果。
MCP Server 支持动态发现和实时更新机制。例如,当新的资源或工具被添加到服务器时,客户端可以自动感知并使用这些新功能,从而提高系统的灵活性和扩展性
MCP Server 的主要功能
- 资源暴露与工具提供: MCP Server 可以将本地文件、数据库、API等资源作为数据实体暴露给AI模型,同时提供工具功能,帮助AI完成复杂任务,如数据检索、内容生成、实时更新等。例如,它支持对MySQL、PostgreSQL等数据库的查询和操作,也支持对本地文件系统的读写和目录管理。
- 会话管理与动态通知: MCP Server 能够管理客户端与服务器的连接,确保会话的时效性和稳定性,同时通过实时推送机制,将最新的资源信息及时传递给AI模型,以保证数据的准确性和实时性。
- 安全性与隐私保护: MCP Server 采用加密认证和访问控制机制,确保数据传输的安全性,避免敏感信息泄露。例如,它支持本地运行,避免将敏感数据上传至第三方平台,从而保护用户隐私。
- 标准化与模块化: MCP Server 提供了标准化的通信协议,支持两种传输协议(STDIO和SSE),并允许开发者通过插件扩展功能,使其具备灵活性和扩展性。例如,它支持通过HTTP标准POST请求与客户端进行交互,同时支持WebSocket实现实时数据推送。
- 多场景应用 : MCP Server 可以应用于多种场景,包括但不限于:
- 本地资源集成:如文件操作、数据库管理、API调用等。
- 云服务交互:如与GitHub、Slack、Google Drive等云服务的集成。
- AI助手扩展:如为ChatGPT等AI助手提供上下文支持和工具调用能力
目前mcp-server发展速度非常快。截止2025年4月26日目前mcp-server在mcp.so市场上已经发展超过10000多个mcp-server

目前各大互联网厂商也陆续实现的MCP-Servers广场了。前段时间魔搭社区也上线了MCP广场。目前也有上千个MCP-Servers.

目前dify 应用市场上的mcp-server还是比较少的,而且每个MCP-server并不是都能够在dify 安装和完成。今天我们就带大家借助魔搭社区提供的MCP广场实现一个基于吃饭、学习、看新闻、出门旅行为一体的 AI Agent 智能体。
我们先看一下工作流截图

话不多,下面带大家来实现这工作流。
2.魔搭社区mcp-server创建和配置
魔搭社区mcp-server 创建
用账号登录魔搭社区,进入首页,点击右边"MCP广场"

这里我们选择下面红色框4个MCP-Server

我们首选拿高德地图给大家介绍MCP-Server 在摩搭MCP广场安装。选中进入高德地图mcp-server配置详细页面

进入后这块可以看到详细信息,我们需要高德地图开发平台console.amap.com/dev/index 开通并创建web应用,并获取apiKEY

具体操作大家可以看lbs.amap.com/api/mcp-ser... 文章。
获取KEY 后回到魔搭社区页面,在右上角填写刚才获取的KEY 点击保存生效。

我上面的是提前配置好了,所以变成重置服务。
保存完成后会生成一个sse URL 地址

记录这个地址
json
{
"mcpServers": {
"amap-maps": {
"type": "sse",
"url": "https://mcp.api-inference.modelscope.cn/sse/xxxxxxxxxx"
}
}
}
我们同样的方法把Tavily智搜 也配置好,当然Tavily 平台的KEY 也是根据要求提前注册好。

另外2个LeetCode(力扣) 和今天吃什么 不需要授权直接点击应用就可以创建SSE 请求地址,我们用同样的方法记录mcpServers
json
{
"mcpServers": {
"howtocook-mcp": {
"type": "sse",
"url": "https://mcp.api-inference.modelscope.cn/sse/xxxx"
}
}
}
记录好4个地址,后面在dify平台上使用。
魔搭社区mcp-server 测试
创建好4个mcp-server 我们可以在魔搭MCP 实验场上测试一下,我是建议大家先测试一下保持刚才的MCP-server 是生效和可用的。

点击配置我们可以看到刚才创建的4个mcp-server

我们点开对话窗体中 小工具按钮,把平台自带的高德地图、time、fetch 先关闭。避免影响我们自己配置的4个mcp-server

接下来验证测试

这个时候它上面显示调用了amap-maps工具

确定它是调用了高德地图mcp-server.
3.dify工作流制作
我们回到dify工作台,创建一个chatflow.

开始
这个开始节点不需要配置,默认的即可。

问题分类器
开始节点之后我们设置一个问题分类器。

问题分类器模型我们这里使用上海人工智能实验室提供的internlm3-8b-instruct 模型。因为我们这里用到4类MCP-Server 这些服务主要围绕 地图搜索、吃饭、刷题、新闻搜索所以对应的方向和领域是不一样的。我们根据他们的特点划分成4类。
分类1
shell
城市的天气、地图经纬度、IP 地址、查询关键词搜或者周边搜获、骑行路径规划、驾车路径规划、公交路径规划 、距离测量 、周边搜
分类2
查询全部菜谱、今天有什么好吃的、智能推荐一周菜谱、查询菜谱
分类3
今天有什么最新新闻
分类4
每日一题

Agent
接下来4个Agent配置都是一样的,我们这里就拿一个高德地图配置给大家说一下。

Agent策略这里我们需要提前安装一个叫做"MCP Agent 策略"

这个插件安装具体就在这里说明的,如果纯内网安装插件可以参考我前期文章 Dify 实战:纯内网1.0+版本,攻克模型工具插件离线安装难题
安装好后 选择 function calling

模型这块我们还是建议大家使用火山引擎的deepseekv3 模型。

工具列表中,我们找一个时间的工具

MCP 服务器地址,这里我们就填写刚才在魔搭社区生成关于高德地图的mcp-server SSE url
shell
https://mcp.api-inference.modelscope.cn/sse/XXXX

指令
arduino
请根据用户输入的{{#sys.query#}} 使用amap-maps 实现查询
查询
arduino
{{#sys.query#}}

以上我们就完成了Agent的配置。 同样的道路我们把剩下的3个也配置好。

直接回复
这个直接回复就比较简单4个直接回复,每一个对应一个AI Agent




以上我们就完成了4个智能体的工作流的搭建了。
4.验证及测试
我们点击右上角 预览按钮,在下面输入我们的问题。比如
问题1
我要从合肥南站到合肥中央公园游玩,我要走公共交通,请给我规划最合理路线

上面的工作流走了高德地图的AI-Agent 然后给得我们的出现路线了。
问题2
今天有什么好吃的

问题3
yaml
2025年4月26日最新科技新闻有哪些?

问题4
给我一个算法题,用中文来回答

我们这里也提供给大家一个地址给大家来体验。
体验地址difyhs.duckcloud.fun/chat/R2EJgq... 备用地址(http://14.103.204.132/chat/R2EJgqU7OFDOMdNN)
相关资料和文档可以看我开源的项目 github.com/wwwzhouhui/...
5.问题
目前我们借用的是魔搭社区提供的免费的mcp-server来实现搭建的,第一次调用的时候会出现超时现象。如下图

遇到这个错误大家不好着急,再调用一次就可以了。我的理解应该是魔搭社区为了资源的不浪费设置了保活机制,也就是这个mcp-server第一次请求是会比较慢的,它需要重新启动或发布,目前也没看到设置超时时间的参数这样会导致请求报错,第二次请求和连续请求就不会有上述错误了。如果大家想规避这个问题可以考虑自己搭建类似魔搭社区提供mcp-server。
5.总结
今天主要带大家了解并实现了基于魔搭社区 MCP 广场和 Dify 平台的 AI Agent 智能体工作流方案。我们介绍了 MCP Server 的相关概念,包括其架构、工作原理、主要功能以及发展现状。MCP Server 作为一种轻量级服务程序,为 AI 模型与外部资源的连接提供了高效、安全的解决方案。这个方案属于比较实用且具有一定创新性的方案,能够帮助用户打造一个集吃饭、学习、看新闻、出门旅行为一体的 AI Agent 智能体。感兴趣的小伙伴可以按照本文步骤去尝试。今天的分享就到这里结束了,我们下一篇文章见。