MCP协议详解:复刻Manus全靠它,为什么说MCP是Agent进化的一大步?

文章转载自「新智元」。

上一周,智能体迎来里程碑式的一周。

从Manus及其开源复现,到Opera的浏览器操作AI智能体、AI工作伴侣Archer,再到多种个人项目,将Agent推向热议风口。

在处理动辄需要十几甚至几十分钟的复杂任务时,涉及到3个核心能力:

  1. 规划

  2. 工具使用

  3. 记忆

其中,第二趴是让智能体「动起来」的关键,真正与现实世界进行交互。

举个例子,当前最强的开源复现OWL在查找伦敦今日放映的电影时,AI智能体主动调用Chrome搜索工具后,精准返回影院的实时信息。

而最火的开源项目OpenMauns,在查找Karpathy个人信息主页信息时,也是基于强大的工具使用能力。

这些案例生动地证明了,工具使用,能让智能体跳出空想局限,进化出会做事的能力。

而作为最强的标准化接口协议,MCP也在一夜间爆红硅谷,无人不知。

对于圈外的人来说,可能对此有所陌生。而它的本质,就是智能体系统的一种。


01

一次搭建,

代替1亿次配置

去11月,Anthropic首次提出「模型上下文协议」,即MCP,赋予了Claude模型超级能力,一次构建,让AI与工作流深度集成。

其主要优势如下:

  • 开发简化:一次编写,多次集成,无需为每个新集成重写定制代码

  • 灵活性:切换AI模型或工具时,不需要复杂的重新配置

  • 实时响应:MCP连接保持活跃状态,支持实时上下文更新和交互

  • 安全性和合规性:内置访问控制机制和标准化的安全实践

  • 可扩展性:随着AI生态系统的扩展,只需连接新的MCP服务器即可轻松添加新功能

用通俗的话讲,MCP就像是专为AI应用设计的通用接口,类似我们日常使用的USB-C。

正如USB-C简化了不同设备与计算机的连接方式,MCP简化了AI模型与数据、工具和服务之间的交互方式。

通过MCP,AI助手不仅能够「读懂」代码,还能「理解」团队讨论、涉及文档等外部信息,提供更加精准的回答。

MCP是一种标准化协议,用于连接AI智能体与各种外部工具和数据源

相比之下,在没有MCP之前,AI助手要想与外部工具互动,必须通过编写代码并调用API,这意味着每一种具体的连接都需要提前手动编程,效率低下且耗时费力。

更棘手的是,每个AI助手与每个外部工具之间都需要单独进行配置。如果有1000个AI助手和1000个外部工具,理论上需要编写1000×1000=100万个独立的连接代码,工作量简直是个天文数字。

打个比方:API就像是不同的门,其中每扇门都有自己独特的钥匙和使用规则:

传统API要求开发人员为每个服务或数据源编写定制化的集成代码

而MCP的出现就像为AI助手和外部系统打造了一套通用的「标准语言」,堪称是智能体生态的一次「标准化革命」。

一旦某个AI助手实现了MCP协议,它就能通过这个协议无缝连接上成千上万的外部工具,无需再为每种连接单独编写代码。

同样,外部工具(比如邮件、天气应用等)也只需搭建一次MCP服务器,之后所有支持MCP的AI助手都可以直接与之交互。

假如有1万个AI助手和1万个外部工具。在MCP模式下,每方只需实现一次协议,总共只需2万次配置。

而按照传统编码方式,每种AI助手与每种外部工具都要单独对接,那将是1万×1万=1亿次配置!

这直接使配置效率提高了不止一个维度。

MCP的灵活性也非常突出,它既可以在云端运行,也可以在本地设备上部署,适应性极强。

可以说,MCP就像为AI助手和外部系统之间架设了一条高速路,取代了过去需要技术人员一桥一桥手工搭建的低效模式。

02

什么是MCP?

正如前文所说,MCP(Model Context Protocol)是一种新的开放协议,目的是为LLM提供标准化的上下文信息传递方式,从而实现AI智能体与外部数据及工具的结合。

和传统的API相比,MCP的区别在于:

  • 单一协议:MCP作为一种标准化的「通用接口」,集成一个MCP意味着可以访问多个工具和服务,而不仅仅是单一服务。

  • 动态发现:MCP允许AI模型动态发现并与可用工具交互,无需预先设定每个集成的固定代码。

  • 双向通信:MCP支持持续、实时的双向通信------类似于WebSockets。AI模型既可以获取信息,也可以实时触发操作。

其中,实时双向通信的机制如下:

  • 拉取数据:LLM向服务器查询上下文信息。例如,查看你的日历安排。

  • 触发操作:LLM指示服务器执行具体操作。例如,重新安排会议、发送电子邮件。

不过,如果应用场景需要精确、可预测的交互模式,并有严格的限制条件,传统API可能更为适合。

MCP提供了广泛、动态的能力,非常适合需要灵活性和上下文感知的场景,但对于高度受控的、确定性的应用可能不是最佳选择。

在以下情况下推荐使用传统API:

  • 需要精细控制和高度特定、受限的功能场景

  • 追求性能优化而需要紧密耦合的系统

  • 要求最高可预测性和最小上下文自主性的应用

架构

MCP采用简单的客户端-服务器架构模式:

  • MCP主机:需要访问外部数据或工具的应用程序(如Claude Desktop或AI驱动的集成开发环境)

  • MCP客户端:与MCP服务器维持专属的一对一连接

  • MCP服务器:轻量级服务器,通过MCP协议提供特定功能,连接到本地或远程数据源

  • 本地数据源:MCP服务器安全访问的文件、数据库或服务

  • 远程服务:MCP服务器访问的基于互联网的外部API或服务

将MCP比作一座桥梁可以更清晰地理解:MCP本身不处理复杂逻辑;它只是协调AI模型和各种工具之间的数据和指令流通。

具体来说,服务器就是与API进行交互的东西。它可以在远程服务器上(例如,在云上),或者在你的本地系统上。

它包含了所有系统上需要与之交互进而采取行动的代码,比如发送Slack消息、创建文件等等。

如下图所示,可以通过MCP服务,调用GitHub API在仓库里创建代码文件。

MCP客户端负责与服务器进行通信。客户端的一个非常酷的特点是它可以同时与多个服务器进行交互。

所以你可以设置专门的服务器来处理GitHub交互和Slack交互,然后把它们接入同一个客户端。

最重要的,协议是使一切运作的关键。可以将它视为一种永远不会改变的通用语言,MCP服务器和MCP客户端都能使用。

它就像USB接口一样,用于将MCP客户端连接到MCP服务器。

USB接口让手机连接到笔记本电脑,MCP协议让你可以将第三方API连接到桌面应用程序。

针对各种类型的MCP客户端,Total TypeScript的作者Matt Pocock还进行了一波对比。

可以看到,Claude Desktop和Continue支持资源、提示、工具,功能很全面。5ire和BeeAI Framework就比较有限,工具支持还可以,但其他方面基本不行。Cline也支持资源和工具,但不支持提示。Cursor和Emacs Mcp主要支持工具,其他功能都不行,适合简单工具操作。

应用场景

在实际应用中,MCP客户端(例如,client.py中的Python脚本)会与管理各种特定工具(如Gmail、Slack或日历应用)交互的MCP服务器进行通信。

这种标准化大大降低了复杂度,使开发人员能够快速实现复杂的交互功能。

  1. 行程规划助手
  • 使用传统API需要为Google日历、电子邮件、航空公司预订API分别编写代码,每个都需要单独的认证、上下文传递和错误处理逻辑。

  • 使用MCP则容易得多,AI助手能够无缝地检查日历可用时间,预订航班,并发送确认邮件------所有这些都通过MCP服务器完成,无需为每个工具单独开发集成代码。

  1. 高级IDE(智能代码编辑器)
  • 使用传统API需要手动将开发环境与文件系统、版本控制、包管理器和文档系统集成在一起。

  • 而使用MCP,开发环境将通过单一MCP协议连接这些服务,实现更丰富的上下文感知能力和更智能的代码建议

  1. 复杂数据分析
  • 使用传统API需要手动管理与各个数据库和数据可视化工具的连接。

  • 使用MCP AI分析平台能够通过统一的MCP层自动发现并与多个数据库、可视化工具和模拟系统进行交互。

快速入门

MCP集成流程:

  • 定义功能:明确规划MCP服务器将提供哪些功能

  • 实现MCP层:遵循标准化的MCP协议规范进行开发

  • 选择传输方式:在本地传输(stdio)或远程传输(服务器发送事件/WebSockets)之间选择

  • 创建资源/工具:开发或连接MCP将要交互的特定数据源和服务

  • 设置客户端:在MCP服务器和客户端之间建立安全稳定的连接通道

03

MCP用例爆发

大模型爆火之后,提示工程师成为新型职业。如今,已经有大佬建议,开发者们赶快去构建商业化MCP服务器吧。

Total TypeScript的作者Matt Pocock仅用28行代码就开发出了一个MCP服务器。

Cursor+MCP梦幻联动,即可迅速构建出客户需求的功能,全程无需人类干预。

对于码农来说,又是效率的一次极致提升。AI不仅能帮你写代码,还能自动完成从需求分析到功能上线的全流程。

已关注 关注 重播 分享 赞 关闭观看更多更多

退出全屏 _切换到竖屏全屏__退出全屏_Founder Park已关注分享视频

0/0

00:00/01:33 切换到横屏模式 继续播放进度条,百分之0播放00:00/01:3301:33_全屏_

倍速播放中 0.5倍 0.75倍 1.0倍 1.5倍 2.0倍 超清 流畅 观看更多转载,MCP协议详解:复刻Manus全靠它,为什么说MCP是Agent进化的一大步?Founder Park已关注分享点赞在看已同步到看一看写下你的评论

视频详情

客户通过Slack发送功能需求,Cursor自动读取消息、构建功能,并创建Pull Request

前Meta研究员、CopilotKit创始人Atai Barkai刚刚开源了一个Open MCP Client的项目。

它可以让任何应用,直接与MCP服务器直接对话,实现更更多智能的功能。

只需从Composio中获取一个URL,开发者即可在自己的应用中集成这个MCP的能力,无需从0开发。

项目地址:open-mcp-client.vercel.app/

Agno的开发者Ashpreet Bedi打造了一款「通用MCP智能体」UAgl,可以借此轻松连接和管理多个MCP服务器。

开发者Will Brown开源了MCP Test Client,可以在开发过程中测试MCP服务器时既充当服务器(对Claude而言),又充当客户端(对被测试的服务器而言)。

参考资料:

norahsakal.com/blog/mcp-vs...

x.com/AtomSilverm...

x.com/mattpococku...



相关推荐
人生都在赌21 小时前
MCP最佳实践与性能优化:构建高效稳定的AI工具连接器
ai编程·cursor·mcp
岳嵩Ben1 天前
用 MCP Prompts 构建 AI 驱动的项目文档管理工具:SoloFlow MCP
mcp
寅时码2 天前
消除大模型幻觉,让AI-IDE真正理解代码,打通LSP与AI的任督二脉
visual studio code·cursor·mcp
SugarPPig2 天前
使用的IDE没有内置MCP客户端怎么办?
ide·mcp
ffutop2 天前
MCP 能力探索
mcp
带刺的坐椅3 天前
Solon v3.4.2(Java 应用开发生态基座)
java·ai·solon·liteflow·mcp
青衫客363 天前
LLM—— 基于 MCP 协议(Stdio 模式)的工具调用实践
大模型·llm·mcp
友莘居士3 天前
本地使用postman调试mcp接口
测试工具·postman·sse·mcp
摘星编程3 天前
MCP提示词工程:上下文注入的艺术与科学
人工智能·提示词工程·a/b测试·mcp·上下文注入
思绪漂移4 天前
阿里云 【免费试用】MCP 赋能可视化 OLAP 智能体应用
阿里云·云计算·agent·云原生数据库·mcp