MCP调研
什么是 MCP
MCP(Model Context Protocol,模型上下文协议),是由 Anthropic 在 2024 年 11 月底推出的开放标准协议,旨在统一大型语言模型(LLM)与外部数据源、工具的通信方式。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而无法充分发挥潜力的难题,使得 AI 应用能够安全地访问和操作本地及远程数据,为 AI 应用提供了连接万物的接口。可以把 MCP 想象成 AI 应用的 USB-C 接口。就像 USB-C 为设备连接各种外设和配件提供了标准化方式一样,MCP 为 AI 模型连接不同的数据源和工具提供了标准化方式。
MCP的架构
包含以下关键组件:
-
MCP主机:如Claude Desktop、IDE等AI工具,负责发起请求
-
MCP客户端:与服务器一对一连接,管理协议通信
-
MCP服务器:轻量级程序,通过标准化协议安全访问本地或远程资源(如数据库、API、文件系统)
MCP 的核心采用 Client-Server 架构,一个应用程序可以连接多个 MCP Server。
只要 AI 应用实现了 MCP ,即可接入到任意的 MCP Server,扩展自身的能力。加入 MCP Server 后,工具调用的流程如下:
通过这种方式,MCP 实现了:
-
即插即用:AI 应用只需实现 MCP 协议,即可接入丰富的第三方工具生态
-
标准化:所有工具遵循统一的描述格式和调用方式
-
解耦工具与应用:工具提供者可以独立开发和维护工具,不需了解 AI 应用内部实现
-
资源共享:一次开发的工具可以被多个 AI 应用复用
MCP与Function Calling的关系
特性 | MCP | OpenAI Function Call | 传统 API 接口 |
开源性 | 完全开源协议 | 封闭平台 | 依赖具体实现 |
标准化程度 | 高,统一协议规范 | 中,平台内统一 | 低,各自为政 |
开发复杂度 | 中等 | 中等 | 高(需自行处理交互) |
数据隐私 | 高,本地处理优先 | 中,需要发送到服务器 | 取决于实现 |
生态成熟度 | 发展中 | 成熟 | 非常成熟 |
MCP的优势在于:开源协议、统一标准、高度数据隐私保护,且正处于快速发展阶段。
协议与传输
MCP 的协议与传输机制是实现客户端-服务器通信的基础,确保 AI 模型与外部资源和工具的高效、安全交互。
协议层 Protocol layer
协议层基于JSON-RPC 2.0
,定义了消息框架、请求/响应机制和通信模式,确保客户端与服务器间的标准化交互。
其主要功能包括:
-
消息路由:处理请求、响应和通知的传递。
-
会话管理:维护客户端与服务器的稳定连接。
-
标准化接口:为客户端(连接服务器)和服务器(提供功能)提供统一接口。
协议层简化了通信复杂性,体现了 MCP 设计原则中的“易构建”和“模块化”,为资源、工具等核心组件提供通信支持。
传输层 Transport layer
传输层负责客户端与服务器间的实际数据交换。MCP 支持两种主要传输机制:
-
标准传输 Stdio
-
使用标准输入/输出进行通信
-
适合本地场景,如命令行工具和 IDE 插件
-
-
HTTP(SSE)
-
通过 HTTP POST 和 Server-Sent Events(SSE,基于HTTP的服务器向客户端单向推送实时数据的技术)实现消息传递
-
适合远程和云服务场景
-
两种传输均采用 JSON-RPC 2.0 格式,确保消息一致性。传输层的模块化设计支持 MCP 的扩展性,可适配未来新增的传输方式。
安全
在客户端机器执行(恶意)代码 MCP 协议缺乏对工具风险等级的分级管控机制
MCP 为更强大的提示词注入(prompt injection)提供了温床 MCP 使得意外暴露敏感数据变得更加容易
MCP 协议为何不如你想象的安全
MCP 应用场景
继Cursor、OpenAI、等海外厂商宣布接入MCP协议后,百度、高德、腾讯三大地图纷纷在MCP Server领域发力,推出了一系列功能和服务。
作为云计算厂商,2025年4月9日阿里云百炼上线业界首个全生命周期MCP服务,无需用户管理资源、开发部署、工程运维等工作,5分钟即可快速搭建一个连接MCP服务的Agent。
阿里云百炼 MCP 快速入门
同日,腾讯云上线正式发布“AI开发套件”,支持MCP插件托管服务,帮助开发者最快 5 分钟搭建业务型AI Agent。
腾讯云的MCP开发广场
Zapier MCP(国外)
Zapier 的 MCP Server 将其已有的 7000+ 应用和 30,000+ 操作(Action)统一封装到了一个 MCP Server URL 中。你可以在 Zapier 后台,自主选择和配置需要的工具及操作,比如发邮件、在 CRM 中创建记录、在 Slack 中发送通知等。Zapier MCP 接入
支付宝 支付 MCP 服务
https://opendocs.alipay.com/open/0go80l
2025-04-14,支付宝在国内推出“支付 MCP Server”服,作为国内首家支持 MCP 协议的支付机构,当前的 MCP Server 仅是支付宝AI 支付服务的第一步,后续支付宝将持续发布更多面向智能体的产品。
高德开放平台 https://lbs.amap.com/
Dify MCP插件 Dify MCP 插件指南 在 Workflow 中配置 MCP Agent Strategy
可以在 Workflow 中使用 MCP Agent Strategy 插件。安装完成后,在对应的 Agent 节点内进行配置,具体操作如下:
将以下 JSON 结构作为模板,其中 url 值替换为 MCP Server 地址,然后将修改后的完整 JSON,复制粘贴到 MCP SERVER URL 配置框内:
{ "server_name": { "url": "https://actions.zapier.com/mcp/*******/sse", "headers": {}, "timeout": 5, "sse_read_timeout": 300 } }
配置完成后,当 Workflow 运行到该 Agent 节点时,就能够根据 Prompt 指令,利用配置好的 Zapier MCP Server 来执行任务。
MCP实战
可以利用高德的mcp server, 创建一个可以导航,出行,制作旅游攻略的demo。
1、如何创建一个高德的MCP Server,参考: MCP Server
2、 MCP Server 配置,可以快速接入使用:
{ "mcpServers": { "amap-amap-sse": { "url": "https://mcp.amap.com/sse?key=您在高德官网上申请的key" } } }
详情:快速接入高德地图 MCP Server
3、在dify上创建工作流,然后添加agent节点,agent节点信息相关配置,如下: mcp服务配置:填写高德 MCP Server配置 指令:你是一个专业的旅游助手。 查询:指定输入的询问问题变量
参考
https://docs.cloudbase.net/ai/mcp/introduce
https://tech.xiaomi.com/#/pc/article-detail?id=40551
https://my.oschina.net/IDP/blog/18387734