微信扫码
添加专属顾问
 
                        我要投稿
MCP协议如何革新AI Agent生态?一文读懂这一标准化通信协议的核心架构与应用场景。 核心内容: 1. AI Agent的核心能力与MCP协议的诞生背景 2. MCP协议的客户端-服务端架构与工作原理 3. 本地与远程MCP Server的典型应用场景
 
                                了解MCP之前,我们先来回顾一下AI Agent,需要具备什么样的能力,达到什么样的智能程度,才可以称为一个Agent。
AI Agent 是能主动解决问题的智能程序,核心在于 感知→决策→行动→学习 的闭环。未来它会像水电一样渗透到所有数字场景中,成为每个人的“智能伙伴”。
上图可简单划分为 Agent = LLM + 规划技能 + 记忆 + 工具使用,其中 LLM 扮演了 Agent 的“大脑”,在这个 系统中提供推理、规划等能力。过多关于AI Agent概念就不过多介绍,读者可以关注公众号之前的文章。
2024年11月底 Anthropic(Claude提供商)提出了MCP协议,并在Claude 客户端支持了MCP。
MCP协议,全称为“Model Context Protocol”,提供了一种将LLM连接到不同数据源(resource)和工具(tool)的标准化方法,旨在统一大模型与外部数据源和工具之间的沟通通信协议。
MCP 大概的工作方式:MCP Host,比如 Claude Desktop、Cursor 这些工具,在内部实现了 MCP Client,然后MCP Client 通过标准的 MCP 协议和 MCP Server 进行交互,由各种三方开发者提供的 MCP Server 负责实现各种和三方资源交互的逻辑,比如访问数据库、浏览器、本地文件,最终再通过 标准的 MCP 协议返回给 MCP Client,最终在 MCP Host 上展示。
MCP 采用客户端-服务端架构,以下是 MCP 官方展示的架构:
MCP的Server一般由各大厂商按照规范提供,这样不同的MCP Client可以进行调用,这里列举一些MCP服务:
由于MCP Server比较多,国内国外的都有,这里就不一一列举,可以访问如下链接自行查看:
如上图所示,一次基于MCP的调用,一共有6个核心的步骤,假设我们的需求是:
调用步骤解析:
第一步:用户向AI Agent提问“现在几点了?”,此时AI Agent就是MCP Client,它会把用户的问题和处理时间的MCP Server以及MCP Tool的信息一起发送给LLM。
第二步:LLM拿到信息后开始推理,基于用户的问题和MCP Server的信息,选出解决用户问题最合适的MCP Server和MCP Tool,然后返回给AI Agent(MCP Client)。
LLM返回给AI Agent的信息是:“你可以使用time这个MCP Server里的get_current_time这个MCP Tool,它可以解决用户的问题”。
第三步:AI Agent(MCP Client)现在知道应该使用哪个MCP Server里的哪个MCP Tool了,直接调用该MCP Tool,获取结果。
调用名称为time的MCP Server里的get_current_time MCP Tool。
第四步:Time MCP Server返回结果(当前的时间)给AI Agent(MCP Client)。
第五步:AI Agent(MCP Client)把用户的问题和从Time MCP Server处拿到的结果再一次给了LLM,目的是让LLM结合问题和答案再规整一下内容。
第六步:LLM把整理后的内容返回给AI Agent(MCP Client),最后AI Agent(MCP Client)再原封不动地返回给用户。
在MCP的整个调用过程中有一个非常关键之处就是MCP Server 以及 MCP Tool 的信息。从第一步、第二步可以看出,这个信息非常关键,是它让LLM知道了该如何解决用户的问题,这个信息就是MCP中最重要的System Prompt,本质上就是优化提示词。
在MCP出现之前,如果要让大模型调用外部服务,需要获取各个外部服务的API的描述信息,如入参说明, 使用场景等,把用户的原始问题和工具的描述信息拼接成Prompt,发送给大模型。
用户想查询北京飞往上海的航班信息和天气情况,传统做法需要以下步骤:
{
  "name": "flight_search",
  "description": "查询航班信息",
  "parameters": {
    "departure_city": "出发城市",
    "arrival_city": "到达城市", 
    "date": "出发日期(YYYY-MM-DD)"
  }
}
天气查询API:
{
  "name": "weather_query",
  "description": "查询城市天气",
  "parameters": {
    "city": "城市名称",
    "date": "查询日期(YYYY-MM-DD)"
  }
}
用户问题:帮我查下明天北京飞上海的航班,还有上海的天气
可用工具:
1. flight_search:查询航班信息
   参数:
   - departure_city:出发城市
   - arrival_city:到达城市
   - date:出发日期(YYYY-MM-DD)
2. weather_query:查询城市天气
   参数:
   - city:城市名称
   - date:查询日期(YYYY-MM-DD)
请分析用户需求,选择需要调用的工具,并输出符合工具要求的参数JSON。
3.大模型输出大模型输出,模型会返回类似这样的结构化请求:
{
  "flight_search": {
    "departure_city": "北京",
    "arrival_city": "上海",
    "date": "2023-11-20"
  },
  "weather_query": {
    "city": "上海",
    "date": "2023-11-20"
  }
}
4.开发者处理,需要写代码将这个JSON分别发送给对应的API,然后再把结果整合后返回给用户。
这种方式的痛点:
为了解决上面查询航班和天气的问题,我们直接搜索对对应的使用MCP工具,如下:
将MCP服务集成到自己的大模型应用开发平台,或者是自己的AI Agent应用中,只需将一些配置参数,大模型即可自行调用对应的MCP工具来获取结果,就不需要自行拼接prompt,组装数据,如下是集成对应的MCP服务:
{
    "mcpServers": {
        "variflight": {
            "command": "npx",
            "args": [
                "-y",
                "@variflight-ai/variflight-mcp"
            ],
            "env": {
                "VARIFLIGHT_API_KEY": "your_api_key_here"
            }
        }
    }
}
然后再自己的大模型应用或者Agent中配置调用即可,大模型会根据你的输入和工具的描述,智能调用工具,如下图所示:
如图所示,左边的提示词并没有指定调用天气查询的接口,或者是指定调用的具体方法和参数,根据天气MCP的配置,大模型会自动调用对应的MCP工具,返回正确的结果,这就是MCP比function calling的优势之处。
以下是一个虚构的简化使用场景,用于方便理解工具能力:
例如,在Agent中引入对应的支付MCP,即可实现定制需求,提供报价,快速交易变现的场景。
让我们在回顾一下MCP的整个概念和流程:
用户提问 → LLM通过MCP Client生成工具调用请求 → MCP Server路由到目标工具 → 工具返回结果 → LLM整合结果并回复用户
MCP宗旨:统一大模型与外部服务的智能桥梁
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-10-31
Opera One升级内置AI 迎来智能助手新纪元
2025-10-31
LangExtract——大模型文本提炼工具
2025-10-31
用户测评|DeepSeek-OCR,你用了吗?
2025-10-31
从Palantir智能化技术路线看AI时代企业级架构平台的核心战略位置
2025-10-31
OpenAI 公开 Atlas 架构:为 Agent 重新发明浏览器
2025-10-31
Palantir 本体论模式:重塑企业 AI 应用的 “语义根基” 与产业启示
2025-10-31
树莓派这种“玩具级”设备,真能跑大模型吗?
2025-10-30
Cursor 2.0的一些有趣的新特性
 
            2025-08-21
2025-08-21
2025-08-19
2025-09-16
2025-10-02
2025-09-08
2025-09-17
2025-08-19
2025-09-29
2025-08-20