- Una guía que reúne 6 protocolos de agentes de IA —MCP, A2A, UCP, AP2, A2UI y AG-UI— en un solo escenario de agente para la cadena de suministro de un restaurante, y explica paso a paso qué problema resuelve cada protocolo junto con código práctico
- Usando Agent Development Kit (ADK) de Google, parte de un LLM vacío y va agregando los protocolos uno por uno hasta completar verificación de inventario, cotizaciones, pedidos, pagos y renderizado de paneles
- MCP se encarga de conectar herramientas/datos, A2A de la comunicación entre agentes, UCP de la estandarización del comercio, AP2 de la autorización de pagos, A2UI de la composición de UI y AG-UI de la entrega por streaming
- Cada protocolo comparte patrones comunes como descubrimiento basado en URLs bien conocidas, esquemas tipados y flujos de eventos estándar, lo que asegura compatibilidad en el ecosistema
- Se recomienda no adoptar los 6 desde el primer día, sino agregarlos gradualmente según sea necesario
MCP (Model Context Protocol) — conexión de herramientas y datos
- Es el protocolo que resuelve la primera barrera al conectar un agente con sistemas y datos, eliminando el trabajo manual de escribir código de integración personalizado para cada API
- Cuando un servidor MCP anuncia (
advertise) sus herramientas, el agente las descubre automáticamente, ofreciendo un único patrón de conexión estándar para cientos de servidores
- Como el servidor MCP es mantenido por el equipo que creó ese sistema, el lado del agente no necesita escribir ni actualizar código de integración y siempre obtiene las definiciones de herramientas más recientes
- En ADK tiene soporte de primera clase mediante McpToolset; en el ejemplo se implementan consultas a una base de datos PostgreSQL (MCP Toolbox for Databases), consulta de recetas vía Notion MCP y envío de correos a proveedores vía Mailgun MCP
- Con
ToolboxToolset se conecta la base de datos de inventario
- Con
McpToolset se conectan servicios externos como Notion y Mailgun
- Un patrón simple que permite ejecutar un servidor MCP con el comando
npx y conectarlo directamente al agente sin código adicional
A2A (Agent2Agent Protocol) — comunicación entre agentes
- Después de que MCP resuelve el acceso a datos, este protocolo aborda el problema restante de la especialización (
expertise), ofreciendo un método estándar de descubrimiento y comunicación entre agentes remotos operados por equipos, frameworks y servidores distintos
- Cada agente A2A publica un Agent Card en
/.well-known/agent-card.json con su nombre, capacidades y endpoint; el agente kitchen manager lo obtiene y enruta las consultas en tiempo de ejecución al agente adecuado
- Para agregar un nuevo agente remoto solo hace falta añadir la URL, sin cambios manuales de código ni redeploys
RemoteA2aAgent de ADK enruta a un solo agente remoto por turno; si se necesita consultar varios agentes remotos al mismo tiempo, se usa directamente a2a-sdk
- Con la función
to_a2a() se puede convertir cualquier agente ADK en un servicio A2A
- Aunque datos crudos como confirmación de precios, grado de calidad o ventanas de entrega no estén expuestos como API, se puede acceder a ellos mediante una interfaz agéntica
UCP (Universal Commerce Protocol) — estandarización del comercio
- Es un protocolo que unifica procesos de pedido entre proveedores con APIs distintas, estandarizando el ciclo de vida de compra como funcionalidades modulares
- Mantiene la consistencia con esquemas tipados de solicitud/respuesta, y funciona con el mismo patrón sin importar si la capa de transporte subyacente es REST, MCP, A2A o EP (protocolo embebido basado en navegador)
- Permite descubrir catálogos de proveedores con el mismo patrón de URL
/.well-known/ucp que usa A2A
- No requiere SDK propietario; puede integrarse directamente con APIs REST estándar usando un cliente HTTP existente
- En el ejemplo se usan
CheckoutCreateRequest para pedir 10 libras de salmón y 3 botellas de aceite de oliva, y PaymentCreateRequest para construir la solicitud de pago
- El repositorio de ejemplo de UCP incluye un ejemplo de asistente de compras impulsado por IA que combina ADK y A2A
AP2 (Agent Payments Protocol) — autorización de pagos y trazabilidad de auditoría
- Si UCP maneja qué se compra y a qué proveedor, AP2 se encarga de quién aprobó la compra y del rastro de auditoría
- Proporciona evidencia no repudiable de intención mediante
mandate tipados, y aplica guardrails configurables a todas las transacciones
- Flujo completo:
IntentMandate → PaymentMandate (firmado) → PaymentReceipt
- IntentMandate: configura guardrails como comercios permitidos, límites de gasto, autoaprobación, requisito de posibilidad de reembolso y tiempo de expiración
- PaymentMandate: autorización de pago vinculada a un carrito y un monto específicos, que permanece sin firmar hasta obtener la aprobación explícita de un administrador si supera el límite
- PaymentReceipt: recibo que completa la trazabilidad de auditoría
- Funciona como una extensión de UCP y agrega pruebas criptográficas de autorización al flujo de checkout
- Actualmente está en fase v0.1; no viene integrado en el core de ADK y ofrece los tipos en un paquete aparte
A2UI (Agent-to-User Interface Protocol) — composición dinámica de UI
- Es un protocolo que permite que los agentes construyan dinámicamente paneles, formularios de pedido, tablas comparativas de proveedores y más, en lugar de solo texto plano
- Combina nuevos layouts en formato JSON declarativo a partir de un catálogo fijo de 18 primitivas de componentes seguras (filas, columnas, campos de texto, etc.)
- Separa la estructura de la UI y los datos, de modo que se pueden actualizar solo los datos sin reenviar los componentes
- Los componentes se envían como una lista plana con referencias cruzadas por ID
- Los datos se entregan por separado con
dataModelUpdate
- El renderer del lado cliente convierte el JSON en UI nativa con Lit, Flutter, Angular y otros
- El mismo agente puede generar interfaces completamente distintas como checklist de inventario, formulario de pedido o comparación de proveedores usando las mismas 18 primitivas
- En la interfaz web de ADK (
adk web) se pueden renderizar componentes A2UI de forma nativa, así que no hace falta construir un renderer separado durante el desarrollo
- Con A2UI Widget Builder se pueden combinar layouts de forma interactiva
AG-UI (Agent-User Interaction Protocol) — entrega por streaming
- A diferencia de las APIs REST tradicionales, los agentes tienen patrones de interacción complejos: transmiten texto gradualmente, llaman herramientas a mitad de la respuesta y pueden pausarse para esperar entrada humana
- AG-UI funciona como middleware y transforma eventos crudos de cada framework en un flujo SSE estandarizado
- El frontend solo necesita recibir eventos tipados como
TEXT_MESSAGE_CONTENT y TOOL_CALL_START, sin saber qué framework de agentes los generó
- ADK ofrece un endpoint nativo
/run_sse, pero AG-UI resuelve el problema de que el código de parsing sea boilerplate y de que se rompa cuando cambia el formato de eventos
- Al envolver con el paquete
ag_ui_adk y montarlo en una app FastAPI, se puede configurar un endpoint de streaming AG-UI
Flujo de funcionamiento de la integración completa
- Cuando el usuario pide: “verifica el inventario de salmón, consulta el precio mayorista y el grado de calidad de hoy, y si falta stock pide 10 libras en Example Wholesale y autoriza el pago”, los 6 protocolos operan de forma escalonada
- Paso 1 — recopilación de información: consulta a la base de datos de inventario con MCP (
check_inventory) → consulta a agentes remotos de precio y calidad con A2A (ask_agent)
- Paso 2 — completar la transacción: solicitud de checkout con UCP (
place_order) → obtención del mandate de pago dentro de los guardrails configurados con AP2 (authorize_payment)
- Paso 3 — mostrar el resultado: composición de widgets interactivos con A2UI → streaming en tiempo real de llamadas a herramientas y respuestas de texto con AG-UI
Consejos para aprovechar los protocolos
- Para mantener una arquitectura limpia, hay que entender con precisión qué problema resuelve cada protocolo
- No hacen falta los 6 desde el primer día; en la mayoría de los casos conviene empezar con MCP y luego agregar gradualmente comunicación multiagente, comercio, pagos, UI enriquecida y streaming según crezcan los requisitos
- Antes de construir con estos protocolos, conviene revisar primero la integración con ADK, los SDK oficiales y el código de ejemplo para no reimplementar por cuenta propia
- Aunque estos protocolos todavía están madurando, adoptar temprano patrones como descubrimiento mediante URLs bien conocidas, esquemas tipados y flujos de eventos estándar ayuda a asegurar compatibilidad con el ecosistema de herramientas, servicios y agentes
1 comentarios
Vistos en conjunto, hay muchísimos protocolos relacionados con la IA.