元峰AI笔记 · Agent与自动化

最新AI圈大事件:谷歌DeepMind推出A2A协议,AI界要变天了!

最新消息,谷歌DeepMind刚刚发布了一个叫"A2A"的协议(全称AgenttoAgent),这可是AI发展史上的一个超级大事件!最厉害的是,用不到100行代码就能做出一个完整的AI助手,而且还兼容MCP!

最新AI圈大事件:谷歌DeepMind推出A2A协议,AI界要变天了!

最新消息,谷歌DeepMind刚刚发布了一个叫"A2A"的协议(全称Agent-to-Agent),这可是AI发展史上的一个超级大事件!最厉害的是,用不到100行代码就能做出一个完整的AI助手,而且还兼容MCP!

A2A协议将彻底改变AI助手之间的"聊天方式"。简单说,就是让不同的AI能像人类一样互相交流协作,建立一种标准化的AI助手间通信方式。不过,要真正理解A2A为啥这么牛,咱们得先了解它的"前辈"——MCP协议。

MCP是什么?为啥突然这么火?

说实话,之前可能很少人听过"MCP"这个缩写,但现在你开始听到它了,而且以后会听到很多很多次!

前段时间,OpenAI宣布要在所有产品中采用Anthropic(就是做Claude的那家公司)开发的MCP协议。这个消息真的很让人意外!要知道,OpenAI和Anthropic可是AI界的两大巨头,平时都是竞争关系啊!

OpenAI的老板Sam Altman已经在X上确认了这个消息。他说OpenAI会立刻在他们的Agents SDK中加入MCP支持,而且ChatGPT桌面应用和Responses API也很快就会跟上。

**简单来说,这就像是苹果突然宣布要用安卓的系统标准一样让人震惊!**这表明MCP协议真的非常厉害,连竞争对手都不得不承认它的价值。

A2A与MCP的关系:互补而非竞争

而现在,谷歌DeepMind又推出了更先进的A2A协议,它建立在MCP的基础上,让AI之间的协作能力更上一层楼。这些变化意味着AI技术正在以超乎想象的速度向前发展,未来的AI将变得更加强大、更加实用!

下面这是一个很好的图表,展示了 MCP 和 A2A 协议如何协同工作。

图片展示了MCP和A2A协议协同工作的情况。左右两侧各有一个“Agent”,内部包含“Local Agents”。左侧“Agent”使用Vertex AI(Gemini API, 3P)和Agent Development Kit(ADK),右侧使用LLM和Agent Framework。二者通过A2A协议连接,体现跨组织或技术边界的协作。同时,两个“Agent”均通过MCP与APIs及企业应用相连。该图与上下文紧密相关,直观呈现了文中所述的MCP和A2A协议协同工作机制。

如果说 MCP 是人工智能的 USB,那么 A2A 就是互联网。

MCP - 让 Agent 调用工具有了标准,有助于连接工具和资源。

A2A - 让 Agents 之间对话有了标准有助于代理商之间的沟通,无论提供商是谁。

A2A与MCP的工作原理对比

A2A如何工作?用团队合作来比喻

想象一个家庭装修项目:

  1. 你需要水管工、电工和木匠共同完成
  2. A2A就像是这些专业人士之间的协作规则
  3. 水管工知道什么时候该让电工接手,电工知道如何与木匠配合

这些专业人士(不同的AI代理)可以顺畅地交接工作,而你只需要与一个项目经理沟通。

MCP如何工作?用餐厅点餐来比喻

想象你在一家餐厅:

  1. 你(用户)告诉服务员(AI助手)你想吃什么
  2. 服务员通过MCP(餐厅内部的点餐系统)把你的需求传达给厨房(各种工具)
  3. 厨房准备好食物后,服务员把它送回给你

无论你去哪家餐厅,只要它们都使用相同的点餐系统,服务员就能轻松处理你的需求。

A2A和MCP:两种AI通信协议的区别和用途

看图就明白了!这两个协议完全是干不同事的。

A2A ≠ MCP,它们有什么不同?

图片展示了A2A和MCP两种AI通信协议的区别。上方标题为“A2A != MCP”,接着说明A2A是代理与代理之间的通信,配有两个代表代理的图标及双向箭头示意。下方指出MCP是代理与API之间的通信,以代表代理和API的图标及双向箭头表示。图片下方文字强调二者并非竞争关系,而是针对不同使用场景的不同工具,与文档中“A2A和MCP是干不同事的,不是竞争关系”的表述相呼应。

它们不是竞争关系,而是各自解决不同的问题。就像筷子和勺子,都是吃饭工具,但用途不同!

A2A的"名片系统"是怎么回事?

A2A有个超酷的设计:每个AI助手都有自己的**"电子名片"**!

图片展示了A2A协议中的“代理卡”(Agent Cards)。在A2A协议里,每个AI助手都有自己的“电子名片”即代理卡。图中显示,代理卡托管在网络上,位于.well - known目录下,类似DNS记录,版本号用semver标准,如1.0.0。卡中包含助手名称、介绍,最重要的是“技能列表”,以图标形式呈现,描述了代理的能力。此图与上下文紧密相关,直观地解释了A2A协议中“名片系统”的关键信息。

这个"名片"其实是放在网上的一个JSON文件,通常放在网站的.well-known目录下(有点像DNS记录)。名片里包含:

  • 助手的名称和介绍
  • 版本号(用semver标准,比如1.0.0)
  • 最重要的是"技能列表"——这个AI会干啥都写清楚了

这样,AI之间想合作时,先看看对方的"名片",就知道能做什么了,超方便!

A2A系统中有哪些角色?

图片展示了A2A系统中的三个“参与者”相关术语。分别是:用户,图标为耳朵形状,指使用代理系统完成任务的终端用户;客户端,图标是扳手,是向远程代理请求执行操作的实体;远程代理(服务器),图标为机器人,是托管代理的服务器,客户端与之通信。图片与上文“A2A系统中有三个‘参与者’。用户、客户端和服务器”内容相呼应,以图文结合的形式对这三个角色进行了清晰说明。

A2A 系统中有三个“参与者”。用户、客户端和服务器。这并不难理解。

A2A系统里有三个主角,很好理解:

  1. 用户:就是我们这些使用AI系统的人
  2. 客户端:负责发送请求的程序或设备
  3. 远程助手(服务器):托管AI助手的服务器

这就像我们用微信(客户端)和朋友(远程助手)聊天一样简单!

A2A怎么传输数据?

图片展示了A2A中客户端/服务器的几种通信传输方式。其中,请求/响应模式以传统的问答方式进行,简单实用;SSE流式传输适合短时间任务,能实时看到进度;推送通知则适用于耗时较长的任务,完成后进行通知。图中用图标、箭头及文字进行了直观呈现,箭头明确指向不同传输方式,与上下文介绍A2A提供的几种通信方式的内容相呼应,帮助读者更形象地理解不同通信方式的特点和适用场景。

A2A提供了几种通信方式,根据不同需求选择:

  • 请求/响应模式:最简单直接的方式,就像问答一样
  • SSE流式传输:适合短时间任务,能实时看到进度
  • 推送通知:适合耗时较长的任务,完成后才通知你

不过,现实中可能不是所有A2A助手都支持全部这些通信方式,要看具体实现。

A2A的工作原理

A2A 通过四个关键功能促进“客户端”和“远程”代理之间的通信:安全协作、任务管理、用户体验协商和能力发现。

图片展示了谷歌DeepMind推出的A2A协议中“客户端”和“远程”代理之间的通信原理。画面中有客户端代理和远程代理的卡通形象,二者通过安全协作、任务和状态管理、用户体验协商、能力发现这四个关键功能进行通信。安全协作处有两个文件图标且都打勾,任务和状态管理处有一文件图标打勾一文件图标打叉,直观呈现各功能在通信中的作用,与上下文对A2A工作原理的介绍相呼应,以可视化方式辅助理解。

  • 安全协作:代理可以将彼此的消息发送到传达上下文,答复,文物或用户说明。
  • 任务和状态管理:客户端和远程代理之间的通信针对任务完成,代理在其中努力满足最终用户请求。此"任务"对象由协议定义,并具有生命周期。它可以立即完成,也可以,对于长期运行的任务,每个代理都可以在完成任务的最新状态下进行交流以保持同步。任务的输出被称为"工件"。
  • 用户体验谈判:每条消息都包含"零件",这是一个完全形成的内容,例如生成的图像。每个部分都有指定的内容类型,允许客户端和远程代理协商所需的正确格式,并明确包括对用户UI功能的谈判 - 例如,iframes,video,web表单等。
  • 能力发现:代理可以使用JSON格式的"代理卡"宣传其功能,从而允许客户端代理识别可以执行任务并利用A2A的最佳代理商与远程代理进行通信。

A2A 实际案例:招聘流程

为了更直观地理解A2A的应用价值,让我们看一个实际的招聘流程案例:

在招聘过程中,一个代理可能会负责寻找候选人,另一个代理负责安排日程,还有一个代理负责背景调查——所有这些都在同一个代理界面(例如Agentspace)内进行。

能力发现

图片展示的是招聘流程中能力发现环节。左侧显示AgentSpace思考,用户提交软件工程师职位描述,要求招聘候选人,第一步是招聘候选人。右侧是能力发现说明,代理必须宣传其能力,让客户知道何时及如何为特定任务利用它们。图片与上下文紧密相关,直观呈现了文档中启动代理协议以发现能进行“候选人招聘”代理这一内容,辅助理解招聘流程中能力发现的步骤和目的。

代理思考过程

  • 启动代理协议@以发现能够进行"候选人招聘"的代理。
  • 基于工具寻找可用的代理,招聘代理@似乎是最合适的,因为其宣传的能力是:"为空缺职位招聘候选人"。

简单来说,这就像你需要修水管,但你不会修,于是你在手机通讯录里翻找,看看哪个朋友是水管工,然后找到后请他来帮你解决问题。

AI助手也是一样,它知道自己需要完成招聘任务,但它更擅长的是理解你的需求并找到合适的"专家AI"来完成具体工作。它就像一个聪明的秘书,懂得把不同的任务分配给最合适的专业人士处理。

协作

图片展示了AI助手在招聘流程中协作的场景。左侧弹窗显示AI助手乐意帮助寻找软件工程师职位候选人,但因未找到关于候选人偏好的位置信息,询问是否偏好特定时区范围内的候选人以优化团队协作。右侧蓝色框内有协作图示,标注“Collaboration”,说明客户和代理必须支持动态交互,允许代理向客户或用户请求澄清、信息或子操作。此图与上下文紧密相关,直观呈现了AI助手在缺少关键信息时主动请求信息以完成任务的协作特性。

这个例子很好地展示了现代AI代理系统的一个重要特性:当缺少关键信息时,不是做出假设或提供不完整的结果,而是主动向用户请求必要的信息,以便更好地完成任务。这种交互式的工作方式使AI系统能够提供更准确、更有针对性的服务。

用户体验协商

图片展示了A2A协议在招聘流程中用户体验协商的示例。左侧文本框内是搜寻代理的想法,其需按职位描述搜寻候选人,考虑用户时区偏好,还在思考以普通文本还是友好的用户体验卡片并通过框架嵌入来发送候选人信息,同时利用代理协议协商客户端是否支持框架渲染,结果为支持,决定以用户体验形式呈现。右侧文本框总结了客户端和代理需就文本、表单、框架或音视频等通信方法达成一致,以确保合适的用户交互,与上文内容相呼应。

图片展示了三位软件工程师的信息卡片。左侧卡片显示Lily Windrof,是DataForm的高级软件工程师,位于纽约;中间是Darren Falesco,ScaleUp的高级软件工程师,在亚特兰大;右侧是Benediah Benediah,也是高级软件工程师,在波士顿。卡片下方有一些功能图标。图片处于介绍谷歌DeepMind推出的A2A协议在招聘流程实际案例的文档中,可能是用于展示招聘相关的人员信息,辅助说明A2A协议在招聘场景中的应用。

客户端和代理需要就通信方法达成一致,如文本、表单、iframe或音频/视频,以确保适当的用户交互。

这个例子展示了AI系统如何超越简单的文本回复,通过与客户端协商最佳呈现方式,提供更丰富、更直观的用户体验。系统会评估可用的技术能力,并选择最适合的交互方式,从而使信息展示更加有效和用户友好。这种"协商"过程通常在幕后进行,用户只看到最终的优化结果。

任务和状态管理

图片展示了AI代理任务和状态管理的场景。用户询问能否对非美国候选人进行背景调查,系统回复已成功启动对Aisha Khan和Dei Lin的背景调查,将发送最新状态更新,预计完成时间为2个工作日。右侧蓝色框内标注“Task and State Management”,并说明客户端和代理在任务执行过程中需有沟通任务状态、变更和依赖关系的机制。此图是对上文“任务和状态管理”内容的示例呈现,展示了AI系统在复杂业务流程中的状态沟通能力。

客户端和代理需要机制来在整个任务执行过程中沟通任务状态、变更和依赖关系。

这个例子展示了现代AI代理如何超越简单的问答模式,能够执行复杂的多步骤任务,并在整个过程中保持与用户的沟通。系统不仅接受指令并执行,还会主动提供状态更新和完成时间估计,使用户能够了解后台进行的操作。这种任务和状态管理能力使AI系统能够处理需要时间和跟踪的复杂业务流程,如背景调查、申请处理或多阶段项目等。

深入理解MCP协议

下面我们再具体聊聊什么是MCP以及它如何与A2A协同工作:

MCP是一个开放协议,标准化应用程序如何为LLM提供上下文。将MCP视为AI应用程序的USB-C端口。正如USB-C提供了一种将设备连接到各种外围设备和配件的标准化方法一样,MCP也提供了一种将AI模型连接到不同数据源和工具的标准化方法。

图片展示了MCP架构。上方标注有“MCP architecture”,显示MCP通过多个MCP客户端(client.py)与MCP主机(如Claude等)相连。下方有多个MCP服务器,分别连接远程服务(如谷歌相关图标代表的服务)和本地数据源。整体呈现出一个大型AI模型通过MCP客户端、服务器连接不同服务和数据源的架构情况,与上下文所描述的MCP作为标准化协议,连接AI模型与不同数据源和工具的内容相契合。

简单来说,它就像是AI世界的"普通话"——不管是哪家公司的AI,都能用这种"语言"来访问工具、数据库和软件。

看图就更明白了:一个大型AI模型控制着多个小助手。每个助手都通过专门的MCP客户端沟通。这些客户端再通过MCP服务器连接到各种服务。这就像大家都同意在马路右边开车一样简单明了。

图片展示了使用MCP构建智能体的架构。左侧是大型AI模型LLM,它控制着Agent 1、Agent 2、Agent 3三个小助手。每个小助手分别连接对应的MCP客户端,即MCP Client 1、MCP Client 2、MCP Client 3。这些客户端统一连接到MCP服务器(MCP Server(s)),并由服务器连接到MCP Service A、MCP Service B、MCP Service C等各种服务。此图直观呈现了文档中所描述的MCP协议如何让大型AI模型通过专门客户端和服务器连接不同服务的工作机制。

为啥你该关心这个技术(即使你不懂编程)

觉得"这不就是些技术细节吗,关我啥事?"——你说得对,但这项技术会彻底改变AI能为你的企业做什么。

三大好处:

  1. 连接更简单 = 开发超快

以前想让AI连接销售系统、聊天工具和你的数据库,得用三种不同方法,每种都需要专门知识和单独维护。有了MCP,一次连接就能用在各处,开发时间直接省了70%!

  1. 数据交流标准化 = 系统更稳定

所有系统用同一种"语言"交流信息。打个比方,就像从"每家餐厅点餐方式都不同"变成了"走到哪都能说'来个2号套餐'就行"。结果就是:AI系统更可靠,合作更顺畅,崩溃的可能性更小。

  1. 统一的上下文管理 = AI更聪明

最厉害的是它能保持对话连贯性。MCP让AI在切换工具时不会"失忆",记得你刚才说的话。这不只是方便,而是决定AI看起来是"笨拙"还是"聪明"的关键。

这对你的生意意味着什么

要知道,OpenAI和Anthropic可是死对头,都在争着做最强AI。他们的商业模式就靠差异化。那OpenAI为啥要用竞争对手的协议?因为标准化能让AI更快普及,就这么简单。

如果你正考虑用AI系统,MCP这个标准的出现会带来这些好处:

  • 对企业来说:不用担心被某家供应商"绑架"。如果明年ChatGPT不满足你的需求了,可以直接换成Claude或其他支持MCP的模型,不用重建整个系统。
  • 对开发者来说:学一套协议,连接所有东西。随着大公司的加入,MCP生态会迅速扩大。
  • 对创业公司来说:入行门槛大大降低。你可以开发专门服务,能接入任何支持MCP的系统,用户不需要再被迫使用其他专有平台。

总之,MCP就像是AI世界的"普通话",让所有AI系统都能顺畅交流,给企业和开发者带来更多便利和可能性!

MCP的实际应用案例:让AI更强大

Blender MCP - AI设计3D模型

你知道什么是Blender吗?就是那个专业的3D建模软件。现在有了MCP,Claude可以直接跟Blender"交流"了!你只需要用语言描述,AI就能帮你创建漂亮的3D场景。

比如,我只用几句话就让AI创建了一个"低多边形风格的巨龙守护宝藏"的场景。不用自己动手建模,全靠嘴说!

👉 想试试?去看看:github.com/ahujasid/blender-mcp

Ableton MCP - AI作曲神器

Ableton是专业音乐制作软件,现在Claude可以直接操控它了!不懂音乐也没关系,只要告诉AI你想要什么风格的音乐,它就能帮你创作出来。

我只用了两个简单的提示,就让AI创作了一首超赞的80年代合成器风格音乐。它自动选择了合适的乐器,创作了旋律,还加了混响和失真效果,简直太神奇了!

👉 音乐爱好者看这里:github.com/ahujasid/ableton-mcp

Unity MCP - AI做游戏开发

Unity是做游戏的热门引擎,现在Claude可以直接控制它了!一句话就能让AI帮你做出一个小游戏,完全不需要写代码。

只用一个命令,就让AI创建了一个"超级马里奥"风格的小游戏。太方便了!

👉 游戏开发爱好者必看:github.com/justinpbarnett/unity-mcp

BioMCP - 医学研究好帮手

这是专为生物医学研究人员打造的工具。通过这个MCP,AI可以帮你搜索和获取临床试验数据、PubMed文章和基因组变异信息。

对医学科研人员来说,这简直是福音!不用再花大量时间查阅文献,AI能帮你快速找到需要的资料。

图片展示了BioMCP(生物医学研究MCP)的工作流程。左侧是AI Research Assistant和AI Research Agent,中间是一个蓝色公文包,代表BioMCP。右侧有三个云朵图标,分别标注Clinical Trials API、Genomic Variants API、Research Articles API,表明BioMCP与这些API连接,可获取临床试验数据、基因组变异信息和研究文章。该图与上下文紧密相关,直观呈现了BioMCP作为生物医学研究人员工具,通过与相关API连接,帮助其快速获取所需资料的功能。

👉 医学研究者看这里:github.com/genomoncology/biomcp

GitHub MCP服务器 - 程序员的AI助手

GitHub官方最近推出了开源的MCP服务器!这是和Anthropic合作开发的,用Go语言重写,性能更好,功能更全。

有了这个,你可以用自然语言让AI帮你处理GitHub上的事情,比如"给我看看我的私人仓库"。它还支持代码扫描、自定义工具描述等功能,在VS Code中就能直接用。

GitHub把MCP称为"AI工具调用标准",这几个月超级火!Anthropic创建了这个协议并做了第一个GitHub MCP服务器,现在已经成为最受欢迎的MCP服务器之一。

图片展示的是GitHub MCP服务器相关内容,背景为深色,有蓝色几何图形装饰。画面中央以白色字体写着“GitHub MCP Server”,上方还有“THE OFFICIAL OPEN SOURCE”的字样。该图片与上下文紧密相关,上下文主要介绍了GitHub官方推出的开源MCP服务器,其由GitHub和Anthropic合作开发,用Go语言重写,性能更好、功能更全,支持自然语言让AI处理GitHub事务等功能,图片起到了对这一服务器的视觉呈现作用。

👉 程序员福利:github.blog/changelog/2025-04-04-github-mcp-server-public-preview/

这些例子是不是很酷?MCP真的让AI变得更加实用了!它不再只是聊天,而是能真正帮你完成专业工作。无论你是做设计、音乐、游戏开发、医学研究还是编程,都能找到适合你的MCP应用。未来,可能每个软件都会有自己的MCP,让AI能够直接操控它们,帮我们完成各种任务!

结语:A2A与MCP开启的AI新时代

随着A2A和MCP这两项协议的出现,我们正站在AI发展的新拐点上。这不仅仅是技术层面的进步,更是AI应用方式的革命性转变。

当各种专业AI助手能像人类团队一样无缝协作,同时又能轻松操控各种软件工具,我们的工作方式将发生怎样的变化?设计师可以用语言创造3D模型,音乐爱好者能用简单描述作曲,医生可以快速获取最新研究数据,程序员能用自然语言管理代码...这些过去需要专业技能的工作,现在只需要清晰表达你的想法就够了。

A2A和MCP的出现,不仅仅是让AI变得更强大,更是让这种强大变得平民化、普及化。就像互联网让信息获取民主化一样,这些协议将让创造力的表达和专业能力的应用变得更加普及。

未来已来,只是尚未流行。随着越来越多的公司和开发者加入A2A和MCP生态,我们将看到更多令人惊叹的应用出现。而这一切的核心,就是让AI之间能够"交谈",让AI能够"使用工具"——这两项看似简单却又革命性的能力。

无论你是技术爱好者、企业决策者还是普通用户,都值得关注这场正在发生的变革。因为很快,AI将不再只是回答你的问题,而是真正成为你的得力助手,帮你完成从简单到复杂的各种任务。

A2A和MCP,记住这两个缩写——它们代表的是AI世界的"普通话"和"互联网",是连接一切的桥梁,也是未来AI应用的基石。

图片展示了Agent2Agent协议(A2A)与Model Context协议(MCP)。上半部分是A2A协议,显示源代理(Source Agent)通过A2A协议与目标代理(Target Agent)通信。下半部分是MCP协议,表明源代理利用MCP协议操控各类工具,如浏览器、API、向量数据库和本地文件系统等。图片以直观图示的方式,对应文档中对A2A和MCP两项协议的介绍,帮助理解这两项协议在AI协作与工具使用方面的功能。

参考内容:

https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/

https://docs.anthropic.com/en/docs/agents-and-tools/mcp