Google A2A协议,MCP的替代还是配合?

admin 2025年4月10日15:49:20评论10 views字数 3173阅读10分34秒阅读模式
Google A2A协议,MCP的替代还是配合?

2025年4月9日,Google发布Agent2Agent (A2A)协议 ,旨在最大限度地发挥代理型人工智能的优势,使代理能够跨孤立的数据系统和应用程序,在动态的多代理生态系统中协作。即使代理是由不同的供应商或不同的框架构建的,让它们能够相互操作,也能提升自主性,成倍提高生产力,同时降低长期成本。

那么,什么是A2A协议,它有哪些优势,与MCP的关系是什么,咱们一起捋一下。

Google A2A协议,MCP的替代还是配合?

什么是A2A协议

Google A2A协议,MCP的替代还是配合?

A2A 是一种开放协议,它为代理之间协作提供了一种标准方式,不受底层框架或供应商的限制。

Google A2A协议,MCP的替代还是配合?

原理图

A2A 促进“客户端”代理与“远程”代理之间的通信。客户端代理负责制定和传达任务,而远程代理负责执行这些任务,以提供正确的信息或采取正确的行动。这种交互涉及以下几个关键功能:

安全协作 :代理可以互相发送消息来传达上下文、回复、工件或用户指令。这些是默认安全的。与MCP相比,A2A确实安全考虑得比较多。
任务管理 :客户端与远程代理之间的通信以任务完成为导向,代理负责执行最终用户的请求。此“任务”对象由协议定义,并具有生命周期。它可以立即完成,也可以长时间运行,每个代理可以进行通信,以彼此保持同步,了解任务的最新完成状态。
用户体验协商:每条消息包含“部分”,即完整形成的内容片段,例如生成的图像。每个部分都有指定的内容类型,允许客户端和远程代理协商所需的正确格式,并明确包含对用户 UI 功能(例如 iframe、视频、Web 表单等)的协商。

能力发现:代理可以使用 JSON 格式的“代理卡”来宣传其能力,从而允许客户端代理识别能够执行任务的最佳代理并利用 A2A 与远程代理进行通信。

下面这个图体现了用户,客户端和远端Agent之间的关系
Google A2A协议,MCP的替代还是配合?
Google A2A协议,MCP的替代还是配合?

A2A 设计原则及关键组件

Google A2A协议,MCP的替代还是配合?

A2A 是一种开放协议,它为代理之间协作提供了一种标准方式,不受底层框架或供应商的限制。在与合作伙伴设计该协议时,我们遵循了五项关键原则:

拥抱代理能力:A2A 致力于使代理能够以自然、非结构化的模式进行协作,即使它们不共享内存、工具和上下文。我们正在实现真正的多代理场景,而不将代理局限于单一的“工具”。

基于现有标准:该协议建立在现有的流行标准之上,包括 HTTP、SSE、JSON-RPC,这意味着它更容易与企业日常使用的现有 IT 堆栈集成。

默认安全:A2A 旨在支持企业级身份验证和授权,在启动时与 OpenAPI 的身份验证方案相同。

支持长时间运行的任务:我们设计 A2A 时就考虑到了灵活性,并支持各种场景,使其能够出色地完成各种任务,从快速任务到深度研究,这些任务可能需要数小时甚至数天的时间(如果人工参与)。在此过程中,A2A 可以为用户提供实时反馈、通知和状态更新。

与模态无关:代理世界不仅限于文本,这就是我们设计 A2A 来支持各种模态(包括音频和视频流)的原因。

A2A协议的一些关键组件

代理卡:一个公开的元数据文件(通常位于/.well-known/agent.json),描述代理的功能、技能、端点 URL 和身份验证要求。客户端使用它进行发现。

A2A 服务器:一个代理,暴露一个实现了 A2A 协议方法(在JSON 规范中定义)的 HTTP 端点。它接收请求并管理任务的执行。

A2A 客户端:使用 A2A 服务的应用程序或其他代理。它将请求(例如tasks/send)发送到 A2A 服务器的 URL。

任务:核心工作单元。客户端通过发送消息(tasks/send或)来启动任务。任务具有唯一 ID ,tasks/sendSubscribe并会经历不同的状态(submitted、working、input-required、completed、)。failedcanceled

消息:表示客户端(role: "user")和代理(role: "agent")之间的通信轮次。消息包含Parts。

Part:Message或中的基本内容单元Artifact。可以是TextPart、FilePart(包含内联字节或 URI)或DataPart(用于结构化 JSON,例如表单)。

工件(Artifact):表示代理在任务期间生成的输出(例如,生成的文件、最终的结构化数据)。工件还包含Parts。

流式传输(Streamling):对于长时间运行的任务,支持该streaming功能的服务器可以使用。客户端接收包含或消息的tasks/sendSubscribe服务器发送事件 (SSE) ,提供实时进度。TaskStatusUpdateEventTaskArtifactUpdateEvent

推送通知(Push Notifications):支持服务器pushNotifications可以主动将任务更新发送到客户端提供的 webhook URL(通过配置)tasks/pushNotification/set。

Google A2A协议,MCP的替代还是配合?

A2A与MCP的关系

Google A2A协议,MCP的替代还是配合?

模型上下文协议(MCP) 是连接 LLM 与数据、资源和工具的新兴标准。我们已经观察到 MCP 正在标准化不同模型和框架之间的“函数调用”。这正在创建一个工具服务提供商生态系统,并显著降低连接代理与工具和数据的复杂性。随着越来越多的框架、服务提供商和平台采用 MCP,我们预计这一趋势将持续下去。

A2A 专注于不同的问题。A2A 是一种应用层协议,使代理能够以其自然的模式进行协作。它允许代理以代理(或用户)的身份进行通信,而不是以工具的身份。我们希望 A2A 能够作为 MCP 的补充得到采用,从而构建代理生态系统,并将与社区公开合作,共同实现这一目标。

简而言之: Agentic 应用需要 A2A 和 MCP。我们建议工具使用 MCP,代理使用 A2A。

让我们看一个例子:

假设有一家汽车修理厂。该店雇佣了一些自主操作的工人,他们使用专用工具(例如千斤顶、万用表和套筒扳手)来诊断和维修车辆故障。这些工人经常需要诊断和修复他们从未见过的问题。维修过程可能需要与客户进行深入交流、进行研究,并与零件供应商合作。

现在让我们将商店员工建模为 AI 代理:

MCP 是连接这些代理与其结构化工具(例如raise platform by 2 meters)的协议。即店员如何使用各种工具完成任务(注:强调本地调用,实际对MCP协议的应用空间有压缩)。

A2A 是一种协议,允许最终用户或其他代理与维修店员工进行协作(“我的车发出咔哒咔哒的噪音”)。A2A 支持持续的双向沟通,并制定一个逐步完善的计划以取得成果(“请给我发一张左轮的照片”,“我发现油液泄漏了。这种情况持续了多久?”)。A2A 还帮助汽车维修店员工与其他代理(例如其零件供应商)进行协作。

我们建议应用程序将 A2A 代理建模为 MCP 资源(由其AgentCard表示)。这样,框架就可以使用 A2A 与用户、远程代理以及其他代理进行通信。

Google A2A协议,MCP的替代还是配合?

如上图,MCP用于本地信任连接,实现工具,资源等调用,而A2A是代理之间对话的协议,两回事。

Google A2A协议,MCP的替代还是配合?

协议生态

Google A2A协议,MCP的替代还是配合?

根据Google官宣,该协议得到了 50 多家技术合作伙伴的支持和贡献

Google A2A协议,MCP的替代还是配合?
Google A2A协议,MCP的替代还是配合?

总结

Google A2A协议,MCP的替代还是配合?

协议是非常重要的东西,只有大家都遵循统一的协议,整体生态才好发展,正如有了HTML,互联网才快速发展,有了OpenAPI, API才会快速发展。

Agent目前是发展最快的领域,从最初的简单,本地应用,开始向互联发展,所以,MCP,A2A这样的协议就显得非常重要。

结合之前对MCP的分析,MCP协议在拉远时,安全设计不够,当然还有些其它不健全的地方,A2A补上了这些,尤其是安全设计。未来二者可能配合,也可能冲突,毕竟,二者目标是基本一致的。

那么,MCP,A2A未来的关系会如何?是否就是未来获得最大应用的协议?

乾坤未定,皆是黑马。

注:A2A协议已经完全开源,在

https://github.com/google/A2A/tree/main

Google A2A协议,MCP的替代还是配合?

END

Google A2A协议,MCP的替代还是配合?

MCP协议及大模型,安全风险巨大

原文始发于微信公众号(AI与安全):Google A2A协议,MCP的替代还是配合?

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年4月10日15:49:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Google A2A协议,MCP的替代还是配合?https://cn-sec.com/archives/3938824.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息