☰
MCP协议到底是什么?Agentic Design Patterns里Agent接入工具生态的终极答案
2026/10/11 21:11:11 网站建设 项目流程
  • 文档
  • 教程
  • AI Agent
  • 人工智能

【免费下载链接】Agentic-Design-Patterns

Agentic Design Patterns

项目地址:https://gitcode.com/gh_mirrors/agen/Agentic-Design-Patterns
点击查看免费下载

如果你想知道MCP协议(Model Context Protocol)到底是什么,不妨先把它想象成一个"万能转接头":它让 AI Agent 不再需要为每个工具、每套数据库单独写集成代码,就能即插即用地接入外部系统。开源项目Agentic Design Patterns(Agentic 设计模式全书)在第 10 章专门讲透了这一协议,是理解 Agent 如何接入工具生态的权威指南。本文用通俗的语言带你 5 分钟读懂 MCP 的核心概念、与 Function Calling 的区别,以及它真实的落地场景。

🔌 一图看懂 MCP 协议架构

MCP 采用客户端-服务器架构:MCP 客户端(通常是你的 Agent 宿主应用)负责发现并连接 MCP 服务器;而每个 MCP 服务器就像一个"能力网关",把工具(Tools)、API、遗留服务、数据库等外部能力打包暴露给 Agent 使用。

图:MCP 协议中 Agent 通过 MCP Server 访问工具、API 与数据服务的标准路径(源自 Chapter 10: Model Context Protocol (MCP)-1e6XimYczKmhX9zpqEyxLFWPQgGuG0brp7Hic2sFl_qw.md#L297-L301))

⚡ 三大积木:Tools、Resources 与 Prompts

MCP 服务器向外暴露的内容分为三类,理解它们是掌握 MCP 协议的关键:

组件本质例子
📦Resources(资源)静态数据PDF 文件、数据库记录
🔧Tools(工具)可执行函数发送邮件、调用 API、查询数据库
💬Prompts(提示模板)交互模板指导 LLM 如何结构化地使用某个工具

一个直观的协作流程是:发现 → 请求 → 执行 → 回填上下文。MCP 客户端先向服务器询问"你有哪些能力",LLM 决定调用哪个工具后,请求被标准化地转发给服务器执行,结果再回填给 LLM 继续下一步任务。

Agent 通过 MCP 可以调用的工具类型非常丰富,包括记忆、数据库、网页搜索、地图、聊天,甚至"把其他 Agent 当作工具":

图:Agent 通过多步工具调用接入记忆、数据库、网页搜索、地图等多种工具(可参考 Chapter 5: Tool Use (Function Calling)-1bE4iMljhppqGY1p48gQWtZvk6MfRuJRCiba1yRykGNE.md))

🥊 MCP 协议 vs Function Calling:一张表讲清区别

很多新手会混淆MCP和工具函数调用(Function Calling),它们都扩展 LLM 能力,但抽象层次完全不同:

维度Function CallingMCP 协议
标准化各厂商私有、格式不一开放标准、跨模型通用
交互模式一对一直接请求客户端-服务器,可连接多个工具服务器
工具发现需在对话中预先告知动态发现,随时查询新能力
复用性与具体应用强绑定MCP 服务器独立可复用

书里有个绝妙的比喻:Function Calling 像是给 AI 一套定制扳手和螺丝刀,适合固定任务的车间;MCP 则像标准化电源插座系统,任何厂商的合规模具都能插上去用,让"车间"不断扩张。

图:A2A(Agent 间通信)与 MCP 协议的分工对比——MCP 连接工具,A2A 连接 Agent(源自 Chapter 15: Inter-Agent Communication (A2A)-1H6HmUYcy5kugt5gt7Kh2Zzb8C62d5pu36RsgMNDCX24.md#L179-L185))

📈 MCP 在 AI 系统演进中的位置

从纯 LLM 到 RAG,再到 Agentic AI,MCP 是让 Agent"长出手脚"的关键一环。下图展示了四代系统形态的演进——只有到 Agentic AI 阶段,记忆、推理、工具调用、人机协作才被完整串联起来:

图:LLM → RAG → Agentic RAG → Agentic AI 的能力演进路径

🎯 MCP 协议的 9 大实战场景

书中列举了 MCP 打开能力边界的典型用途,覆盖从个人效率到企业级自动化:

  • 数据库集成:用自然语言查询 BigQuery 等数据集,实时生成报表
  • 外部 API 调用:获取天气、股价、发邮件、操作 CRM 系统
  • 生成式媒体编排:调用图像(Imagen)、视频(Veo)、语音、音乐生成服务
  • 复杂工作流编排:查客户数据 → 生成营销图 → 起草并发送邮件,一站式完成
  • IoT 设备控制:用自然语言指挥智能家电与工业传感器
  • 金融服务自动化:分析行情、执行交易、自动化合规报告
  • 定制化内部工具:把企业私有的遗留系统"包一层 MCP"即可接入 Agent 生态
  • 推理式信息抽取:让 LLM 从长文档中精准抽取答案,而非返回整篇文档
  • 标准化通信层:不同 LLM 提供商与应用之间即插即用地互通

实际产品中,这种"一键连接"的体验已经很常见——日历、邮件、Jira、Outlook 等第三方服务通过标准协议接入 Agent,正是 MCP 理念的落地:

🚀 快速上手:ADK + FastMCP 两步接入 MCP

如果你准备动手,Agentic Design Patterns 第 10 章给出了完整可运行的示例,核心只需两步:

  1. 创建 MCP 服务器:用 FastMCP(一个高层 Python 框架)几行代码就能把一个普通函数注册为 MCP 工具,它会自动解析函数的类型提示和文档字符串,生成 LLM 能理解的接口描述。
  2. 让 Agent 作为 MCP 客户端连接:在 Google ADK 中用MCPToolset组件一行配置即可接入——本地服务器走 STDIO 传输(基于 JSON-RPC),远程服务器走 Streamable HTTP + SSE 传输。

Agent 的问题解决过程也因此变得标准化:接收任务 → 扫描环境 → 推理规划 → 调用 MCP 工具执行 → 学习改进,整个闭环清晰可控:

图:Agent 的五步问题解决流程,其中"Take Action"阶段依赖 MCP 等工具接入能力

⚠️ 书中特别提醒了一个容易被忽视的坑:MCP 只是"插座",不是"电器"。如果把一个笨重的遗留 API 原封不动地包上 MCP(比如只能逐条拉取工单详情),Agent 用起来依然又慢又不准。正确做法是让底层 API 先具备过滤、排序等确定性能力,并返回 Agent 能直接阅读的格式(如 Markdown 而非 PDF)。

✅ 决策指南:什么时候该上 MCP?

书中的经验法则(Rule of Thumb):

  • ✅用 MCP:构建复杂、可扩展、企业级的 Agentic 系统,需要对接多样且持续演化的外部工具,且希望 Agent 能动态发现新能力、无需重新部署
  • ✅用 Function Calling:简单应用,工具数量固定且有限
  • 🔐无论哪种:都要考虑认证鉴权、错误处理、本地 vs 远程部署等安全与工程细节

📌 关键要点回顾

  • MCP 是让 LLM 与外部系统通信的开放标准,采用客户端-服务器架构
  • 三大核心概念:Tools(工具)、Resources(资源)、Prompts(提示模板)
  • Function Calling 是"一对一"直连,MCP 是"生态级"互通,两者互补而非替代
  • ADK 的MCPToolset与 FastMCP 是两条最顺手的上手路径
  • MCP 的价值上限取决于底层 API 的设计质量——连接只是起点,数据格式同样关键

想深入系统学习 Agent 设计模式?这份 424 页的开源全书覆盖 21 个核心模式,从提示链、路由到多智能体协作一应俱全,第 10 章的 MCP 完整原文见 Chapter_10-Model_Context_Protocol_(MCP)-1e6XimYczKmhX9zpqEyxLFWPQgGuG0brp7Hic2sFl_qw.md#L81-L287)。

  • 文档
  • 教程
  • AI Agent
  • 人工智能

【免费下载链接】Agentic-Design-Patterns

Agentic Design Patterns

项目地址:https://gitcode.com/gh_mirrors/agen/Agentic-Design-Patterns
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询