支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


5000字图文讲透:MCP+A2A协议如何让AI从「大模型」进化到「超级分布式智能体」

发布日期:2025-05-10 19:44:09 浏览次数: 1539 作者:云上小鲸
推荐语

探索AI进化的新里程碑,揭秘MCP+A2A协议如何重塑智能体生态。

核心内容:
1. AI智能体的爆发式增长及统一目标概述
2. MCP协议的起源、架构与核心优势
3. 实际构建MCP Server的步骤与应用示例

杨芳贤
53A创始人/腾讯云(TVP)最具价值专家

点击上方 蓝字 关注「云上小鲸

Beyond <a href=MCP Limitations: Enter Google's A2A for Agent Collaboration!" class="rich_pages wxw-img" data-imgfileid="100000596" data-ratio="0.5625" src="https://api.ibos.cn/v4/weapparticle/accesswximg?aid=110764&url=aHR0cHM6Ly9tbWJpei5xcGljLmNuL3N6X21tYml6X2pwZy84bWlicTlCaWJmSzJsS1RtTkRaSlpxQlFQbUZSWWlhbXdYMUtjR0tGdmVEYzIxaWJWVXNwaWJSY3I2VDc1UU5uWXdEdzlSZE9MNEVXcHNkVlg3UjZpY2ZHSnRpYlEvNjQwP3d4X2ZtdD1qcGVnJmFtcA==;from=appmsg" data-type="jpeg" data-w="1024">
目前,随着大模型变得越来越强大、越来越成熟,以大模型为核心的AI智能体也进入了爆发式增长阶段,加上dify、Coze、n8n魔搭社区等智能体创作平台的赋能,AI智能体正在逐渐成为流程化和自动化的核心驱动力。
而现在,大家的统一目标就是:让AI智能体变得更加强大,能够自主获取最新的数据,调用外部工具来完成任务,同时,AI智能体之间还能以一个团队的形式进行分工协作,更快、更好地完成更复杂的任务
在这个背景下,MCP和A2A协议发布了!?
它们成为了AI智能体时代的交互标准,共同构建出多AI智能体生态的核心框架。

一、MCP协议



MCP 是什么?与 API 相比有何优势

01

什么是MCP?

由Anthropic于2024年11月推出的开源协议,旨在标准化大型语言模型(LLM)与外部工具、数据源的交互方式。
MCP类似于“AI领域的USB接口”,允许模型通过统一的协议访问数据库、API、本地文件系统等资源,无需为每个工具单独开发接口。例如,开发者可配置MCP服务器,让AI直接查询数据库或发送邮件。
项目地址:https://github.com/modelcontextprotocol/modelcontextprotocol
MCP遵循简单的客户端-服务器架构:
  • MCP Hosts使用LLMs核心的程序,需要访问外部数据或工具(如Cursor)

  • MCP Clients: 与 MCP 服务器保持1 : 1的连接

  • MCP Servers: 轻量级程序,通过 MCP 暴露特定的功能,连接到本地或远程数据源

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

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

MCP通过开源和标准化,简化了AI模型与数据、工具和服务交互的方式,其优势如下:

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

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

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

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

  • 可扩展性: 随着 AI 生态系统增长,轻松添加新功能——只需连接另一个 MCP 服务器

MCP协议通过定义 Resources(静态资源)、Prompts(提示词模板)和 Tools(可执行工具)三大核心能力,让开发者能够以模块化方式为 LLM 扩展文件系统访问、API 集成甚至物联网控制等交互能力。


02

构建MCP Server

下面MCP Server示例展示:如何使用社区Go SDK(mark3labs/mcp-go)快速构建自己的 MCP Server。

主要实现当前时间的查询,支持任意时区:

package main

import (
  "context"
  "fmt"
  "time"

  "github.com/mark3labs/mcp-go/mcp"
  "github.com/mark3labs/mcp-go/server"
)

func main() {
  // Create MCP server
  s := server.NewMCPServer(
    "Demo ?",
    "1.0.0",
  )

  // Add tool
  tool := mcp.NewTool(
    "current time",
    mcp.WithDescription("Get current time with timezone, Asia/Shanghai is default"),
    mcp.WithString(
      "timezone",
      mcp.Required(),
      mcp.Description("current time timezone"),
    ),
  )

  // Add tool handler
  s.AddTool(tool, currentTimeHandler)

  // Start the stdio server
  if err := server.ServeStdio(s); err != nil {
    fmt.Printf("Server error: %v\n", err)
  }
}

func currentTimeHandler(ctx context.Context, request mcp.CallToolRequest)(*mcp.CallToolResult, error) {
  timezone, ok := request.Params.Arguments["timezone"].(string)
  if !ok {
    return mcp.NewToolResultError("timezone must be a string"), nil
  }

  loc, err := time.LoadLocation(timezone)
  if err != nil {
    return mcp.NewToolResultError(fmt.Sprintf("parse timezone with error: %v", err)), nil
  }

  return mcp.NewToolResultText(fmt.Sprintf(`current time is %s`, time.Now().In(loc))), nil
}

然后,将代码编译成二进制文件:


03

配置和应用MCP Server

下面,我在Trae工具上安装了Cline插件,配置好自己的DeepSeek API和key,再把编译好的MCP Server配置到Cline中:

配置OK后,在Cline上创建新任务,输入任务请求:请告诉我当前的北京时间?

这时,会提示已经连接到time-mcp-server,可以查询时间,问你是否同意?

然后,点击Act切换模式,就能通过你的time-mcp-server服务器查询时间,并返回:

通过这个示例可以看出,使用MCP SDK开发一个 MCP 服务非常便捷,且该服务能够轻松集成到任何支持 MCP 协议的客户端程序中,这大大降低了服务与应用程序之间的集成难度。


二、Agent2Agent协议



image info


01

Agent2Agent协议是什么?

Agent2Agent协议(A2A)是一种开放协议,它为智能体提供了一种相互协作的标准方式,而不受底层框架或供应商的影响。由Google于2025年4月8日推出,旨在解决不同AI智能体之间的互操作性问题,得到了50多个技术合作伙伴的支持和贡献,包括Atlassian、Langchain、MongoDB、PayPal、Salesforce等。

项目地址:https://github.com/google/A2A

Google Cloud - Partners contributing to the Agent 2 Agent protocol - Accenture, Arize, Articul, ask-ai, Atlassian, BCG, Box, c3.ai, Capgemini, Chronosphere, Cognizant, Cohere, Colibra, Contextual.ai, Cotality, Datadog, and more

A2A通过标准化通信格式、身份认证和任务协调机制,使得来自不同厂商或框架的智能体(如客服Agent与日程管理Agent)能够无缝协作。例如,用户可通过A2A协议让一个智能体将任务(如“安排会议”)委托给另一个智能体,并实时追踪进度。

A2A协议有三个核心参与者

  • User

  • Client

  • Remote Agent(Server)

User存在于协议中,主要的作用是用于 认证&授权 。Client 代表用户向不透明智能体请求操作的实体(服务、智能体、应用程序),即任务的发起者。Remote Agent 指的是任务的执行者。

Client 和 Server 之间的通信,可以理解为就是一个个简单的请求和结果的响应,只不过这个请求是一个个的任务。一个 Agent(智能体) 既可以是 Client 也可以是 Server。


02

A2A的设计原则

设计人员建议应用程序将 A2A 智能体建模为 MCP 资源(由其 AgentCard 表示)。这样,框架就可以使用 A2A 与用户、远程智能体以及其他智能体进行通信。

Agentic Application showing A2A and MCP together

设计原则

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

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

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

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

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


03

A2A的工作原理

A2A 促进“客户端”智能体与“远程”智能体之间的通信。客户端智能体负责制定和传达任务,而远程智能体负责执行这些任务,以提供正确的信息或采取正确的行动。

核心功能

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

  • 任务和状态管理: 客户端与远程智能体之间的通信以任务完成为导向,智能体负责执行最终用户的请求。此“任务”对象由协议定义,并具有生命周期。它可以立即完成,或者对于长时间运行的任务,每个智能体可以进行通信,彼此保持同步,了解任务的最新完成状态。

  • 协作: 智能体可以互相发送消息来传达上下文、回复、工件或用户指令。

  • 用户体验协商: 每条消息包含“Parts”,即完整形成的内容片段,例如生成的图像。每个Part都有指定的内容类型,允许客户端和远程智能体协商所需的正确格式,并明确包含对用户 UI 功能(例如:iframe、视频、Web 表单等)的协商。


04

实际案例:候选人招聘

通过 A2A 协作,招聘软件工程师的过程可以显著简化。在 Agentspace 这样的统一界面中,用户(例如:招聘经理)可以委托其智能体寻找符合职位列表、工作地点和技能要求的候选人。然后,智能体会与其他专业智能体互动,以寻找潜在候选人。

用户收到这些建议后,可以指示其智能体安排进一步的面试,从而简化候选人寻找流程。面试流程完成后,可以联系另一位智能体协助进行背景调查。这只是 AI 智能体如何跨系统协作以寻找合格候选人的一个例子。


05

未来憧憬

A2A 有望开启智能体互操作的新时代,促进创新,并创建更强大、更灵活的智能体系统。我们相信,该协议将为未来铺平道路,使智能体能够无缝协作,解决复杂问题,改善我们的生活。

开启 超级AI智能体 时代


三、MCP与A2A协议的关系



01

通俗解释

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

将汽修店员工建模为 AI 智能体:

  • MCP 是将这些智能体与其结构化工具(比如:千斤顶)连接起来的协议。

  • A2A 是另一种协议,允许这些智能体(比如:用户、其他供应商与汽修店员工)之间进行沟通协作。

A2A与MCP分别代表了AI智能体生态的“横向协作”与“纵向扩展”。
MCP解决的是“如何让AI智能体使用工具”,而A2A解决的是“如何让多个AI智能体协作完成任务”。
这两者的结合将推动AI智能体从孤立的功能模块进化为动态协作的专业团队,为复杂的任务(如自动化供应链、跨学科研究)提供技术基础,极大限度地释放AI智能体的潜力?

参考
  • https://modelcontextprotocol.io/introduction

  • https://www.claudemcp.com/zh/blog/mcp-vs-api

  • https://mp.weixin.qq.com/s/uTsr06MnJ9t3sGDzLD99_g

  • https://mp.weixin.qq.com/s/gmgo_glOzbvdFwePP1yQ9g

  • https://mp.weixin.qq.com/s/HG0G10wXiYjv0F1NXESi1Q

  • https://github.com/google/A2A

  • https://google.github.io/A2A/#/documentation

  • https://google.github.io/A2A/#/topics/a2a_and_mcp

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

Manus和MGX,实现:一个人即一个软件团队,实操效果太炸裂" data-itemshowtype="0" target="_blank" linktype="text" data-linktype="2">MetaGPT打造的OpenManus和MGX,实现:一个人即一个软件团队,实操效果太炸裂

60张图带你探秘灭霸级的「AI智能体」!为什么它能取代人类50%的工作?

字节AI神器Trae上线,一句话生成作品!零基础也能开发小游戏。

如果觉得文章不错,欢迎关注「云上小鲸」,随手点赞、在看、转发三连。如果想第一时间收到推送,也可以给我加个星标⭐,谢谢。

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询