MCP 协议深度解析:架构设计、传输层与工具编排最佳实践
· 阅读需 12 分钟
本文是 Agent 协议系列的第二篇,前篇《Function Calling 诞生的背景》探讨了函数调用能力的起源,本篇聚焦更通用的协议层——MCP。
为什么需要 MCP?
Function Calling 解决了「LLM 如何调用外部函数」的问题,但它有一个根本性局限:每个模型厂商的函数定义格式不同。OpenAI 有 tools 参数,Anthropic 用 tools 但 schema 略有差异,Google Gemini 用 tools / tool_config,Llama 系列模型需要特定的 prompt 模板。
这意味着你的工具代码需要为每个模型写一个适配层。更麻烦的是,工具本身的注册、发现、安全策略并没有一个统一的标准——每个 Agent 框架都在自己造轮子。
MCP(Model Context Protocol) 就是来解决这个问题的。它由 Anthropic 提出,本质上是一个通用的、模型无关的上下文与工具交互协议,定义了 LLM 应用与外部工具/数据源之间的标准通信方式。