paint-brush
Google A2A - un primer vistazo a otro protocolo de agente-agentepor@zbruceli
Nueva Historia

Google A2A - un primer vistazo a otro protocolo de agente-agente

por Bruce Li5m2025/04/10
Read on Terminal Reader

Demasiado Largo; Para Leer

Google A2A: un primer vistazo a otro protocolo agente-agente y comparación con el MCP de Anthropic. Son muy similares.
featured image - Google A2A - un primer vistazo a otro protocolo de agente-agente
Bruce Li HackerNoon profile picture
0-item
1-item

Hoy Google lanzó su protocolo de agente a agente de código abierto, imaginativamente llamado A2A o de agente a agente. Dado que ya vemos un gran impulso detrás de Anthropic MCP (Protocolo de Contexto Modelo), Google afirmó que A2A es complementario a MCP Incluso usaron un emoji de corazón para dejar en claro el punto.


No estoy tan seguro, así que decidí investigar más a fondo y comprobar cuál será la posición de A2A en el universo agéntico. Analizaremos cómo funciona A2A en la vida real y una comparación con MCP.

Prueba de conducción A2A

Usar A2A es sorprendentemente similar a MCP. Puedes ejecutar varios agentes/servidores A2A y el cliente A2A puede conectarse a todos ellos. La buena noticia es que, por lo general, no es necesario ejecutar los agentes A2A junto con el cliente A2A.

Ejecución de agentes A2A (servidores)

Puse en marcha los tres agentes de ejemplo localmente.


  1. Agente de Google ADK que puede presentar informes de gastos por usted
  2. Agente de CrewAI que puede descubrir generar una imagen
  3. Agente LangGraph que puede averiguar el último tipo de cambio


Un servidor A2A informa al mundo sobre sus capacidades mediante una "Tarjeta de Agente" en formato JSON. Por ejemplo, la tarjeta de agente para Google ADK se ve así:


 { "name": "Reimbursement Agent", "description": "This agent handles the reimbursement process for the employees given the amount and purpose of the reimbursement.", "url": "http://localhost:10002/", "version": "1.0.0", "capabilities": { "streaming": true, "pushNotifications": false, "stateTransitionHistory": false }, "defaultInputModes": [ "text", "text/plain" ], "defaultOutputModes": [ "text", "text/plain" ], "skills": [ { "id": "process_reimbursement", "name": "Process Reimbursement Tool", "description": "Helps with the reimbursement process for users given the amount and purpose of the reimbursement.", "tags": [ "reimbursement" ], "examples": [ "Can you reimburse me $20 for my lunch with the clients?" ] } ] }


Lanzar la aplicación de demostración de A2A Client

Continuemos con el cliente. Las instrucciones para poner en funcionamiento la aplicación web de demostración están aquí. https://github.com/google/A2A/tree/main/demo


Una vez que la aplicación web esté en ejecución, puedes acceder a ella desde tu navegador. El cliente se parece un poco a Gemini AI Studio, con el diseño Material Design característico de Google.


URL: localhost:12000


Primero, necesitamos agregar todos los agentes al cliente especificando su URL base. Como en mi caso ejecuté todos los agentes localmente, su URL base fue:


  • Kit de desarrollo de Google
    • host local:10002
  • tripulaciónAI
    • host local:10001
  • LangGraph
    • Host local: 10000


Nota al margen: dentro del protocolo, la URL final se parece a esto:

https://localhost:10002/.well-known/agent.json


Ahora puedes ver los tres agentes que están conectados:

Agentes A2A


Puedes ver el historial de chat aquí

Chats A2A


Toda la lista de eventos

Lista de eventos A2A


Y toda la lista de tareas

Lista de tareas A2A


La configuración es bastante básica

Configuración A2A

Pruebe el agente de Google ADK para el reclamo de gastos

Agente de Google ADK: reclamación de gastos

Pruebe LangGraph para el tipo de cambio de divisas

Agente LangGraph - tasa de cambio


Agente de prueba CrewAI para la generación de imágenes

Agente de CrewAI: generación de imágenes

Una prueba combinada para múltiples agentes

Quiero comprobar si el cliente A2A puede usar varios agentes para lograr un mismo objetivo . Así que probé si podía combinar el agente de reclamaciones de gastos con el agente de tipos de cambio. Y funcionó.


Mi tarea consistía en reclamar un gasto de 5 euros por una cerveza en Alemania durante un viaje de negocios, el 4 de abril de 2025. La conversación tuvo varias idas y venidas, y finalmente se obtuvo la cantidad correcta en dólares estadounidenses en el formulario de reclamación de gastos.



Observaciones iniciales de A2A

Me gusta que A2A sea un modelo cliente-servidor puro que puede ejecutarse y alojarse remotamente. El cliente no tiene que especificar ni iniciar los agentes/servidores.


La configuración del agente es bastante sencilla: basta con especificar la URL base. La "Tarjeta del Agente" se encarga del intercambio de contexto. Además, se pueden agregar y eliminar agentes una vez iniciado el cliente.


En el formato de demostración actual, resulta un poco difícil comprender cómo se comunican los agentes entre sí y realizan tareas complejas. El cliente llama a cada agente por separado para diferentes tareas, lo que es muy similar a la llamada a múltiples herramientas.

Comparar A2A con MCP

Ahora que he probado A2A, es hora de compararlo con MCP, sobre el que escribí anteriormente. Este artículo .


Si bien tanto A2A como MCP buscan mejorar el desarrollo de sistemas de agentes de IA, en teoría abordan necesidades distintas. A2A opera a nivel de agente a agente, centrándose en la interacción entre entidades independientes, mientras que MCP opera a nivel LLM, enfocándose en enriquecer el contexto y las capacidades de los modelos de lenguaje individuales.


Y para dar una idea de sus principales similitudes y diferencias según su documentación protocolaria:

Característica

A2A

MCP

Caso de uso principal

Comunicación y colaboración entre agentes

Proporcionar contexto y herramientas (API/SDK externos) a los LLM

Arquitectura central

Cliente-servidor (agente a agente)

Cliente-host-servidor (aplicación-LLM-recurso externo)

Interfaz estándar

Especificación JSON, Tarjeta de agente, Tareas, Mensajes, Artefactos

JSON-RPC 2.0, Recursos, Herramientas, Memoria, Avisos

Características principales

Colaboración multimodal, dinámica y segura, gestión de tareas, descubrimiento de capacidades

Modularidad, límites de seguridad, reutilización de conectores, SDK, descubrimiento de herramientas

Protocolo de comunicación

HTTP, JSON-RPC, SSE

JSON-RPC 2.0 sobre stdio, HTTP con SSE (o HTTP transmisible)

Enfoque en el rendimiento

Comunicación asincrónica para el manejo de carga

Gestión eficiente del contexto, procesamiento paralelo y almacenamiento en caché para un alto rendimiento

Adopción y comunidad

Buen apoyo inicial de la industria, ecosistema naciente

Adopción sustancial de toda la industria, comunidad de rápido crecimiento

Conclusiones

Aunque Google lo presentó como un protocolo complementario de MCP, mi primera prueba muestra que sus propósitos y funciones se superponen de forma abrumadora . Ambos abordan la necesidad de los desarrolladores de aplicaciones de IA de utilizar múltiples agentes y herramientas para lograr objetivos complejos. Actualmente, carecen de un buen mecanismo para registrar y descubrir otros agentes y herramientas sin configuración manual.


MCP tuvo un comienzo temprano y ya obtuvo un gran apoyo tanto de la comunidad de desarrolladores como de las grandes empresas. A2A es una plataforma muy joven, pero ya cuenta con un sólido apoyo inicial de muchos clientes empresariales de Google Cloud.


Creo que esta es una gran noticia para los desarrolladores, ya que tendrán más opciones en protocolos agente-agente abiertos y estándar . Solo el tiempo dirá cuál prevalecerá, o incluso podrían fusionarse en un único estándar.