今天聊一个我觉得特别重要、但很多人可能还没反应过来的话题——MCP协议。我先抛一个判断啊,如果你现在还在用Function Calling开发智能体,那你的技术栈可能已经停留在2024年了。
哈哈,这话说得有点狠,但确实是事实。你想啊,Function Calling是OpenAI在2023年6月搞出来的,当时确实很惊艳,让大模型能调用外部工具了嘛。但它有两个致命问题。第一个是各家厂商的接口格式不统一,OpenAI一套、通义一套、智谱又一套,你换个模型供应商,适配代码基本得重写。第二个更要命,就是工具执行本身也没有统一框架,换个第三方框架代码又得改。这就是典型的供应商锁定问题。
对,所以本质上就是缺一个大家都认的标准。那MCP就是来干这个事的?
没错。MCP全称Model Context Protocol,模型上下文协议,是Anthropic在2024年11月底推出的一个开放标准。你可以简单理解为——它就是大模型和工具之间的一套标准化通信协议。有了这个协议之后,智能体和工具就可以完全分离了,工具不用跟智能体代码放在同一个项目里,通过网络就能远程调用。
等一下,我想帮听众理解一下这个「分离」为什么重要。你想象一下,以前开发智能体的时候,工具函数是直接写在你项目代码里的,小项目没问题。但如果公司里有人写了一个特别好用的通用工具,想让十个智能体都用上,难道要把代码拷贝十份吗?
对,这就是痛点。其实这个思路跟软件工程里的微服务架构是一脉相承的——把大的单体应用拆成一个个独立的小服务,通过标准化的API通信。MCP本质上就是把这个成熟的架构理念搬到了智能体开发领域。工具变成了独立部署的服务,谁都可以通过网络来调用。
明白了。那说到具体的通信方式,我知道MCP定义了三种机制,能给大家讲讲吗?
好,三种通信机制。第一种叫Stdio,就是标准输入输出,本地通信用的。客户端启动一个子进程跑服务端,通过stdin发请求、stdout收响应。但说实话,生产环境几乎不会用,因为工具都在本地了,你直接调函数就行,何必多绕一层协议呢?主要是本地调试或者像Cursor这种AI编辑器集成本地工具时才用。
嗯,那第二种呢?
第二种是SSE,Server-Sent Events,早期MCP版本用的网络通信方式。SSE的特点是单向的,只能服务端往客户端推数据。早期MCP的做法是客户端用HTTP POST发指令,然后通过一个持久的SSE连接接收响应。但问题是智能体和工具之间经常需要双向交互,SSE的单向特性就成了瓶颈。
所以就有了第三种?
对,第三种叫Streamable HTTP,2025年3月26号的规范更新里新增的,也是现在官方推荐的方式。它的设计特别精妙,我觉得可以用「按需升级」四个字来概括。简单的工具调用,就用普通HTTP请求搞定;如果是需要长时间运行或者流式返回结果的复杂工具,它会自动把连接升级成SSE通道。而且它比纯SSE方案更容易穿透企业防火墙和负载均衡器,更符合现有Web基础设施的习惯。
这个设计确实聪明,不搞一刀切,按场景灵活选择。那我特别想聊聊生态这块,因为一个协议好不好,最终还是看有没有人用。
这块进展其实挺快的。MCP推出才半年多,阿里巴巴已经发布了涵盖通义模型、钉钉办公、阿里云基础设施管理的MCP工具;腾讯也发布了企业微信、腾讯文档的工具接口;智谱AI提供了知识检索、代码执行的能力。海外像Stripe做支付的、Cloudflare做网络服务的、Sentry做错误监控的,也都发布了官方MCP服务。
这让我想到移动互联网时代的App Store——平台上可用的工具越多,开发者构建应用的成本就越低,然后又吸引更多工具提供者加入,形成正向飞轮。
你这个类比特别好。而且我觉得MCP真正让人兴奋的地方,其实不只是技术层面的协议统一,而是它能打破数据孤岛。你想,公司内部不同部门可以各自开发MCP工具——财务部提供财务查询、人力部提供员工信息,任何部门的智能体都能按需调用,不用重复造轮子。
跨企业呢?
跨企业就更有想象空间了。你想象一个场景:企业的智能体在处理客户需求时,同时调用自家CRM查客户信息、调用物流公司的MCP工具追踪包裹、调用支付平台处理退款——所有调用都遵循同一套协议,不用为每个第三方写不同的集成代码。这等于把全球公司的资源和能力整合到了一个统一框架下。
但这就涉及安全问题了吧?公司的数据不能随便让人调用啊。
对,MCP在安全性上考虑得还是比较完善的。它分了两层:公司内部服务通常依赖内网隔离,直接调用就行;对外的公网服务则支持OAuth 2.1授权框架加JWT Token认证。客户端调用远程工具前,先走授权流程拿到Token,每次请求都带上,服务端验证通过才执行。JWT是无状态的认证方式,特别适合分布式架构,服务端不用维护会话状态。
嗯,内外有别,这个策略很合理。对了,我还注意到MCP的技术栈在2025年上半年变化挺大的?
变化非常大。服务端SDK升级到了2.0版本,API和用法都有较大变化,原生支持了Streamable HTTP。然后LangChain那边的MCP适配器库在2025年6月底也做了重要更新,主要是支持Streamable HTTP传输、优化连接池管理,还有跟LangGraph的深度集成。除了LangChain,CrewAI、AutoGen、Semantic Kernel这些主流框架也都在积极适配MCP。所以说,即使是几个月前学的MCP知识,现在可能就得更新了。
技术迭代确实快。最后我想做个总结。其实MCP之于AI智能体,有点像HTTP之于Web应用、TCP/IP之于互联网——一个统一的通信协议,往往是整个生态爆发的前提条件。
我非常同意。我个人的判断是,到2026年,企业里90%以上的智能体项目都会用到MCP。现在越来越多公司在发布MCP工具接口,智能体的能力会呈指数级增长。对AI开发者来说,掌握MCP已经不是加分项了,是必修课。
说得好。所以各位如果还没开始了解MCP,现在正是时候。毕竟在AI这个领域,早半年和晚半年,可能就是完全不同的世界了。