前言

众所周知,大模型的信息实时性存在明显的局限性,一时间Manus突然火热起来,大家在重新思考AI Agent能带来哪些业务创新。AI Agent包括了两种主流的模式,Function Call(函数调用)和React(推理-行动)模式,借助外部工具完成指定的任务。其中Function Call依赖模型厂商的实现,需要具备语义理解并生成对应结构化的参数,每家厂商定义各自的函数实现格式(如OpenAI的json格式),导致生态比较碎片化,开发工具需要重新适配不同模型平台。
2024年11月Anthropic推出MCP协议,重新定义了大模型与外界交互的标准。

定义

**MCP(Model Context Protocol)**是Anthropic推出的一个开放协议,支持大模型(LLM)应用和外界数据源及工具无缝集成。相当于模型和各个应用之间的USB-C。
usb-c.jpeg

MCP包括MCP Client、MCP Server、MCP宿主机/应用/Host。

  • MCP Client:集成在大模型应用中(如Cursor、IDE、Cherry Studio、Roo Code插件等),负责构建JSON RPC2.0格式请求参数与MCP Server交互。
  • MCP Server:由开发者提供给模型而暴露的资源(Resources)、工具(Tools)、提示(Prompts)等。
  • MCP 宿主机/应用/Host:指大模型应用程序,人与大模型交互的应用,如Cursor、IDE、Cherry Studio、Roo Code插件等。

JSON RPC2.0 简化跨语言和跨平台的远程过程调用,并成为当前主流的 RPC 协议之一。

// 入参格式如下
{
 "jsonrpc": "2.0",  // 协议版本(必填)
 "method": "add",   // 调用的远程方法名(必填)
 "params": [2, 3],  // 参数(数组或对象,可选)
 "id": 1            // 请求标识符(用于匹配响应,通知类请求可省略)
}

发展

  1. 2024年11月5号,Anthropic发布“MCP”协议
  2. 2025年1月23号,Cursor 0.45版本开始支持MCP
  3. 2025年1月,Cline开始支持MCP
  4. 2025年2月13号,Windsurf3正式引入MCP
  5. 2025年3月26号,Anthropic发布MCP最新通讯模式Streamable HTTP 取代 SSE + HTTP模式
  6. 2025年3月27号,OpenAI宣布其核心开发工具AgentSDK正式支持MCP服务协议
  7. 2025年4月9号,阿里云百炼上线MCP服务平台,含高德等50余款工具
  8. 2025年4月14号,腾讯云升级大模型知识引擎,支持MCP插件
  9. 2025年4月16号,支付宝推出“支付 MCP服务”
  10. 2025年4月25号,推出“支付 MCP服务”

架构

mcp架构.jpeg

由图可知,MCP Client与Server通信的方式目前包括两种:

  • 第一种是本地的stdio(stantard Input/Output)方式:属于本机的两个进程间通讯,借助操作系统的管道实现,一个MCP Client仅对应一个MCP Server
  • 第二种是远程的HTTP/SSE方式:远程调用方式,支持一个MCP Server被多个MCP Client连接,该协议暴露see端点和常规http端点实现通讯。
  • 第三种是 Streamable Http,是在2025年3月26推出,取代SEE方式,仅需要1个端点即能常规HTTP请求,又可以支持双向支持写。

数据流转

1、初始化
1.1、MCP Host启动,初始化Mcp Client并与配置的MCP Server进行连接;
1.2、确定Server提供的可调用资源/工具。

2、处理用户请求
2.1、将用户输入的指令和可调用的MCP Server描述信息提供给大模型;
2.2、大模型分析用户意图,判断需要调用的工具,生成结构化参数,MCP Client调用MCP Server。

3、数据响应与整合
3.1、MCP Server调用相关工具,并通过JSON RPC 2.0协议返回给MCP Host。
3.2、MCP Host将工具返回的内容发送给模型,模型结合上下文生成自然原因响应,返回给用户。

一些资料

官方:https://modelcontextprotocol.io/specification/2025-03-26
MCP so: https://mcp.so/
其它一些MCP资源库:https://mp.weixin.qq.com/s/DBhC3un8gnrahZZZW7_ISQ

spring ai alibaba mcp example:https://github.com/springaialibaba/spring-ai-alibaba-examples/tree/main/spring-ai-alibaba-mcp-example

spring ai mcp example:https://github.com/spring-projects/spring-ai-examples/tree/main/model-context-protocol
spring ai官网mcp:https://docs.spring.io/spring-ai/reference/api/mcp/mcp-overview.html

总结

Mcp统一了大模型与外界数据交互的标准,定义了开放协议,主流的模型厂商和AI客户端都积极响应,加快了AI生态的发展。