Guía interactiva · Día 2

Agent Tools & Interoperability

Un agente aislado es una máquina personalizada en un garaje. Un agente interoperable es miembro de una fuerza de trabajo global. Esta guía resume el paper "Agent Tools & Interoperability" (Kanchana Patlolla, Łukasz Olejniczak & Pier Paolo Ippolito, Google) en formato interactivo: el stack de protocolos — MCP, A2A, A2UI, AP2 y UCP — con diagramas interactivos, simuladores, quiz y cheatsheets.

📄 Paper: Día 2 ⏱ ~30 min de estudio 🔌 5 protocolos abiertos ✅ quiz de 8 preguntas 🌐 EN · ES · PT-BR
👥 Para quién es esta guía
👩‍💻 Ingenieros de software 🧑‍💼 Engineering managers 🏛 Arquitectos & líderes técnicos ⚡ Vibe coders

Asume familiaridad con el Día 1 (Agentic Engineering y el Factory Model). No asume conocimiento previo de los protocolos — MCP, A2A, A2UI, AP2 y UCP se presentan desde cero, con analogías.

orchestrator@workspace — turno 12 · el stack de protocolos en acción
user$ "busca vuelos a Tokio, reserva el más barato, registra el gasto" ▸ MCP tools.list() → 3 servers · 14 tools · 42ms ▸ A2A travel_agent.discover(registry) → matched ✓ ▸ A2A travel_agent.send(task:"buscar NRT, 14–21 nov")   ← "3 opciones · mejor: ¥68.200 directo" ▸ A2UI render(FlightCard×3, CompareTable) → surface:main ✓ ▸ AP2 mandate.check($682 ≤ $1000) → approved ✓ ▸ UCP order.confirm(flight_id:NH211) → PNR:XK4T2 ✓ user$
0
protocolos abiertos formando el stack: MCP · A2A · A2UI · AP2 · UCP
0
componentes en el catálogo básico de A2UI — UI generativa sin escribir React
0
notas al pie en el paper original — todas listadas en la sección de referencias
01

Introducción: el stack que saca al agente del garaje

Agent = Model + Harness — y los protocolos son los tornillos y tuercas estandarizados que hacen el harness conectable al mundo.

El Día 1 estableció el cambio de paradigma: del código escrito a mano a la Agentic Engineering, donde el desarrollador opera como un Factory Model — diseñando la línea de producción, no apretando cada tornillo. La ecuación central de ese paper sigue siendo la base de todo lo que viene:

Agent
=
Model
+
Harness
el modelo razona · el harness conecta, orquesta, protege y persiste

El harness — el andamiaje de herramientas, memoria, transporte y seguridad alrededor del modelo — solo alcanza su potencial cuando se conecta al mundo mediante estándares abiertos. Sin estándares, cada integración es una pieza mecanizada a medida: funciona en tu garaje, se rompe con el primer cambio. Con estándares, el harness se convierte en una plataforma modular plug-and-play.

El paper presenta cinco protocolos como los "estándares de la industria" — las roscas y tomas uniformes del ecosistema agéntico. Haz clic en cada uno para explorar:

Dos piezas más completan el cuadro: la OpenResponses & Interactions API funciona como 'Power Plugs' — enfoques modernos de API para inferencia de LLM que soportan tareas de larga duración, difuminando la frontera entre un turno stateless y un agente stateful. Y los Skills son 'Playbooks' — instrucciones markdown muy simples, con scripts o herramientas listos para ejecutarse en un entorno sandbox como una terminal.

🔌

MCP

el "USB-C"
📻

A2A

la "radio de la fábrica"
🪟

A2UI

la "vitrina generativa"
💳

AP2

la "bóveda de pagos"
🛒

UCP

la "cadena de suministro"

MCP — Model Context Protocol

🔧

Sin protocolos

el rol de Conductor
  • cada agente es una "máquina personalizada" aislada en el garaje
  • wrappers bespoke frágiles para cada API externa
  • el desarrollador queda atrapado en el rol de Conductor: cableado manual, punto a punto
  • deuda técnica que crece con cada integración
🏭

Con protocolos

el rol de Orchestrator
  • plataforma modular plug-and-play
  • herramientas y agentes especialistas descubiertos y conectados en minutos
  • el desarrollador asciende a Orchestrator: compone capacidades, no cablea
  • enfoque total en la lógica de negocio de alto valor
Enfoque del paper

Cómo los vibe coders pueden usar los protocolos para construir un equipo virtual de datos y ejecución en una sola tarde — descubriendo, conectando y orquestando herramientas y agentes como quien arma bloques.

02

Por qué este paper, por qué ahora

En la era del vibe coding, menos estructura exige MÁS confianza — y los protocolos son lo que construye esa confianza.

El vibe coding eliminó la fricción de escribir código — y con ella, parte de la estructura que garantizaba previsibilidad. La velocidad sigue siendo el motor principal, pero ahora los harnesses y protocolos cargan el peso de la confianza: definen contratos claros entre el agente y el mundo externo.

Sin estándares abiertos, cada API se convierte en un "estándar-de-uno": un parser personalizado, un formato de error personalizado, un flujo de autenticación personalizado. El resultado es deuda técnica que se acumula en silencio — y una lista de tareas de bajo leverage que consumen el tiempo del desarrollador:

🧶

Escribir wrappers frágiles

cada integración bespoke es código nuevo que nadie quiere mantener — y que se rompe con el primer cambio de la API.

🩹

Mantener los puentes

token refresh, retry, rate limit, schema drift: el mantenimiento de cada puente es un impuesto recurrente.

🔄

Adaptarse a los cambios

cuando el proveedor cambia la API, todos los consumidores bespoke se rompen al mismo tiempo.

El cambio de rol

Con protocolos, el desarrollador deja de ser el builder que cablea cada conexión y se convierte en el orchestrator de alto nivel que compone capacidades estandarizadas — gastando energía en la lógica que diferencia el producto, no en la tubería.

03

Para quién es este paper — y el consejo aplicado del Día 1

Una guía práctica para quienes priorizan velocidad y resultado visual — sin sacrificar rigor.

El paper fue diseñado para ingenieros de software, engineering managers, arquitectos y líderes técnicos que reconocen que el cambio hacia la Agentic Engineering exige adhesión estricta a protocolos para mantener fidelidad y confiabilidad de los resultados. Sirve como guía práctica para "vibe coders" que priorizan velocidad y resultado visual, mostrando cómo construir un equipo virtual de datos y ejecución.

📌Consejo aplicado · heredado del Día 1

Cuatro hábitos que el paper refuerza antes de cualquier código

Antes de codificar

Usa un archivo AGENTS.MD para orientación estándar de los agentes de codificación. Y piensa profundamente antes de codificar: declara supuestos, expón tradeoffs y detente a preguntar al encontrar ambigüedad — en lugar de adivinar en silencio.

Durante la ejecución

Escribe el mínimo código: sin features especulativas, sin abstracciones no solicitadas. Haz ediciones quirúrgicas — solo las líneas exactas necesarias, manteniendo el estilo. Y ejecuta guiado por objetivo: plan paso a paso, criterios de éxito, test fallando primero, loop hasta pasar.

En la secuencia de la serie

Una inmersión más profunda en Agent Skills viene en el próximo whitepaper; seguridad es el tema del siguiente. Este paper se enfoca en herramientas e interoperabilidad.

04

MCP: descubrimiento, configuración y conexión

El "USB-C" de los agentes — un socket estandarizado que reemplaza el cableado bespoke con tres pasos.

En el enterprise tradicional, conectar un agente a una herramienta significa cableado bespoke: wrappers REST personalizados, gestión manual de API keys, refresh de tokens OAuth, parsers JSON escritos a mano para cada formato de respuesta. Cada herramienta nueva es un proyecto. El MCP (Model Context Protocol) reemplaza esa fricción con un socket estandarizado — descubre, configura, conecta.

PASO 1
🔍

Discovery

encuentra servidores MCP que exponen las herramientas que necesitas

PASO 2
⚙️

Configuration

credenciales y permisos vía archivos de entorno

PASO 3
🤝

Connection

handshake: lista las herramientas y valida los schemas

Discovery

Consejo aplicado · seguridad primero

Antes de conectar cualquier servidor MCP: busca las instrucciones oficiales del proveedor, nunca pases credenciales a servidores públicos no verificados y considera una capa de protección como Model Armor. Los servidores en registries públicos no están auditados — úsalos bajo tu propia responsabilidad.

05

Resolviendo el problema NxM

La matemática de la integración: N modelos × M herramientas — y por qué el MCP transforma la explosión combinatoria en suma lineal.

Toda plataforma agéntica enfrenta la misma matemática: N modelos × M herramientas. En el enfoque tradicional, cada par modelo-herramienta exige una integración bespoke — O(N×M) puntos de integración. Con 5 modelos y 10 herramientas, son 50 integraciones para mantener. Si la API de una herramienta cambia, múltiples loops de parser se rompen de una vez.

asciila matemática de la integración — tradicional vs MCP
TRADICIONAL — O(N×M): cada par precisa do seu próprio conector

  gemini ──┬── calendar   5 modelos
  claude ──┼── gmail      ×
  llama ───┼── bigquery   10 ferramentas
  gpt ─────┼── maps       = 50 integrações bespoke
  mistral ─┴── drive      (e 50 lugares para quebrar)

COM MCP — O(N+M): todos falam o mesmo protocolo

  gemini ─┐              ┌── calendar
  claude ─┤              ├── gmail
  llama ──┼── [ MCP ] ──┼── bigquery
  gpt ────┤              ├── maps
  mistral─┘              └── drive
           5 + 10 = 15 adaptadores

Con MCP, cada modelo implementa el protocolo una vez y cada herramienta implementa el protocolo una vez — el costo total cae a O(N+M), escala lineal. Arrastra los controles y observa la diferencia explotar:

Tradicional · O(N×M)12
Con MCP · O(N+M)7
integraciones bespoke
12
adaptadores MCP
7
ahorro
5
Con 3 modelos y 4 herramientas, el MCP ya elimina 5 integraciones. La ventaja crece multiplicativamente con la escala — y cada API que cambia ahora rompe un adaptador, no N.
06

Por qué esto importa: los transportes

Definiciones de herramienta estandarizadas + transportes estándar = el harness conecta directo, sin capas personalizadas.

Como las definiciones de herramienta están estandarizadas, el MCP puede conectarse directamente al harness mediante transportes estándar — sin capas de integración personalizadas. Dos transportes cubren prácticamente todos los casos. Haz clic en cada uno:

🖥️

stdio

Standard Input/Output · local & prototipado
🌐

SSE over HTTP

Server-Sent Events · local o remoto

stdio

En ambos casos, el vibe coder gana el mismo superpoder: conectar herramientas sin escribir múltiples capas de integración personalizada — el transporte lo resuelve el protocolo, no tú.

07

Depurando problemas con servidores MCP

Cuando el agente alucina parámetros o llama a la herramienta equivocada: no ajustes el prompt a ciegas — inspecciona el transporte.

Cuando el agente alucina parámetros, llama a la herramienta equivocada o falla al parsear un payload, el instinto es reescribir las system instructions. Resiste. El problema casi siempre está en lo que el agente ve — y la forma correcta de diagnosticarlo es inspeccionar directamente las tuberías del transporte, sin iniciar el workflow principal del agente.

🔬

MCP Inspector

Herramienta nativa de desarrollo: un panel web local para interrogar manualmente cualquier servidor MCP (local o remoto).

  • ver los schemas activos de las herramientas
  • probar payloads de input manualmente
  • inspeccionar los paquetes JSON-RPC 2.0 raw
  • todo esto sin disparar el workflow del agente
🧰

Chrome DevTools

Para entornos de desarrollo web y conexiones SSE, DevTools es el complemento ideal:

  • trazar los streams web entrantes
  • verificar la latencia del servidor por request
  • depurar la conexión SSE cuadro a cuadro
  • correlacionar errores de red con fallos del agente
La regla de oro del debug de MCP

Datos raw del transporte > ajustes ciegos de prompt. Si el schema dice date: string y el agente envía un número, la corrección va en el schema o en el ejemplo — no en una frase más de instrucción.

08

El toolkit del vibe coder: buenas prácticas de consumo de MCP

Qué hacer y qué no hacer nunca al consumir servidores MCP.

✅ Haz

Audita los servidores públicos antes de conectar — revisa el código fuente.
Usa RAG para herramientas: carga/descarta schemas dinámicamente del contexto, evitando la dilución de atención.
Aprovecha los API Gateways y registries internos — schemas aprobados y gobernados.
Usa el MCP Inspector — datos raw del transporte, no prompt-tweaking a ciegas.
Incluye HITL: muestra los inputs de la herramienta antes de la llamada, evitando la exfiltración de datos.
Registra el uso de herramientas para auditoría.

❌ No hagas

No construyas si puedes consumir — busca primero un servidor MCP existente.
No uses MCPs públicos no verificados en producción — riesgos de seguridad y confiabilidad.
No hardcodees credenciales — usa variables de entorno.
No conectes en producción — usa un proyecto de desarrollo con datos no de producción u ofuscados.
No lo uses para actualizaciones — modo read-only si necesitas datos reales.
No des acceso amplio a todos los proyectos — limita el alcance al proyecto específico.
09

Interoperabilidad Agent-to-Agent (A2A)

Los sistemas de IA se están convirtiendo en redes distribuidas de especialistas — y la comunicación estandarizada es lo que escala esa red.

Los sistemas de IA están evolucionando de aplicaciones aisladas a redes distribuidas de especialistas de dominio. En esta realidad, la comunicación estandarizada no es una comodidad — es un prerequisito de escala. A2A (Agent-to-Agent) es la capa fundacional que resuelve la fragmentación del ecosistema: permite a los desarrolladores descubrir, orquestar y monetizar una fuerza de trabajo virtual globalmente interoperable.

La evolución de las arquitecturas agénticas

Hay un patrón recurrente en la historia de la computación: lo manual y de bajo nivel da paso a lo declarativo y basado en intención. El usuario dice QUÉ, no CÓMO. Esta trayectoria se repitió tres veces — y ahora sucede con los agentes:

🏗️

Infraestructura → Infrastructure as Code

de servidores configurados a mano a declaraciones de estado deseado.

O QUÊ, não COMO
🤖

ML → AutoML

la visión de Pichai (2017): pipelines de ML que se construyen solos a partir de la intención.

O QUÊ, não COMO

Código → Vibe coding

hoy: aplicaciones enteras generadas a partir de intención en lenguaje natural.

O QUÊ, não COMO
🧩

Monolito → Microservicios → Agentes

la trayectoria refleja a Fowler & Lewis (2014): de aplicaciones monolíticas a servicios especializados y componibles.

O QUÊ, não COMO
“One way we hope to make AI more accessible is by simplifying the creation of machine learning models called neural networks. Today, designing neural nets is extremely time intensive... That's why we've created an approach called AutoML, showing that it's possible for neural nets to design neural nets. We hope AutoML will take an ability that a few PhDs have today ….”
— Sundar Pichai (2017) · endnote 15
10

El techo monolítico

La "navaja suiza" de un agente solo funciona hasta cierto punto — después, la propia arquitectura se convierte en el límite.

El vibe coding inicial produce naturalmente el Single Agent Monolith: una "navaja suiza" con un prompt sofisticado, un agente usando múltiples sombreros y decenas de herramientas. Se puede prototipar en un fin de semana — pero pronto choca con el Techo Monolítico:

📏

Fricción de escala

No se puede optimizar la "lógica de banco" sin confundir la "lógica de UI". Más herramientas → peores decisiones: el espacio de búsqueda se vuelve demasiado grande y surgen parámetros alucinados y herramientas equivocadas.

🧠

Sobrecarga contextual

System instructions + decenas de schemas de herramientas + historial de conversación → la working memory del modelo se desborda. Todo compite por la misma atención.

💥

Punto único de fallo

Un bug en una herramienta o instrucción → el agente entero alucina o se bloquea. Los datos corruptos se propagan a todas las capacidades.

🔪Analogía · La navaja suiza

Genial para acampar — pésima para construir una casa

El monolito

Una navaja suiza tiene 30 herramientas en una sola pieza: todo disponible todo el tiempo, pero cada herramienta es mediocre y el conjunto es pesado de cargar. Es el agente monolítico — versátil, frágil, imposible de escalar.

La alternativa

Una caja de herramientas organizada: cada herramienta en su lugar, especializada, tomable bajo demanda. Es la arquitectura multi-agente — cada especialista carga solo lo que necesita.

11

Especialización interna

La especialización es una ley fundamental del diseño de sistemas — y los agentes siguen el mismo plano que el ML y el software.

La solución sigue el plano que los ingenieros de ML y de software ya conocen. AutoML probó su valor de negocio y luego fue descompuesto en etapas observables — versionado de datos, feature stores, detección de drift. Lo mismo sucede con el agente monolítico: la especialización es el mecanismo de escala.

🏛️ Figura 3 · Arquitectura multi-agente monolítica — especialización interna
Cómo funciona
rootel agente monolítico se particiona lógicamente en sub-agentes con propósitos distintos
subcada sub-agente: un system prompt altamente enfocado + un subconjunto relevante de herramientas
limitesigue siendo un monolito: los sub-agentes NO se comunican a través de fronteras de red
limitecomparten el runtime y la memoria del mismo proceso
Tres beneficios directos
reducción del espacio de búsquedamenos errores
menos dilución de atenciónrazonamiento + nítido
carga contextual optimizada+ señal, − ruido

Reducción del espacio de búsqueda: restringir las herramientas de cada sub-agente reduce errores y alucinaciones. Mitigación de la dilución de atención: un prompt de dominio único produce un razonamiento más nítido. Optimización de la carga contextual: el orchestrator enruta la tarea y cada sub-agente recibe contexto con una alta relación señal-ruido.

12

Arquitectura multi-agente distribuida

Cuando los especialistas salen de tu proceso y cruzan fronteras de red — y la lente "build vs. buy" entra en juego.

El ecosistema está migrando a arquitecturas multi-agente distribuidas: los líderes de la industria (Google, Salesforce, ServiceNow, Workday) ya publican agentes de dominio específicos. El orchestrator delega a través de fronteras de red — ya no dentro de un único proceso.

🔨

Build · sub-agentes personalizados para plataformas 3P

maintenance tax significativo
  • el desarrollador asume total responsabilidad por actualizar la lógica de prompt, las definiciones de herramientas y los cambios de schema de API
  • cada cambio en la plataforma 3P se convierte en tu trabajo
  • mantienes lo que en realidad no construiste
🤝

Buy · agentes especialistas oficiales

mantenidos por expertos de dominio
  • el especialista lo mantiene quien conoce el dominio profundamente
  • tu orchestrator se enfoca en el valor único para el usuario y en la innovación central
  • las actualizaciones llegan vía protocolo, no vía reescritura
El cuello de botella de la fragmentación

Cada especialista puede ser construido por un equipo diferente, con tecnología diferente: el agente de Google en Python, Go o Java con ADK, el de Salesforce en LangChain, el de Workday en algo totalmente bespoke. Lenguajes diferentes, estructuras de payload diferentes, manejo de estado conversacional diferente, capas de transporte diferentes. Si cada integración exige código personalizado y bucles de corrección de errores bespoke, el "equipo virtual" se convierte en un proyecto de integración — y el maintenance tax consume el proyecto entero.

13

Dominios bounded × unbounded

Por qué un agente especialista no puede tratarse como una herramienta común — la analogía de la reforma de la cocina.

🔨Analogía · La reforma de la cocina

Las herramientas son instrumentos pasivos; los especialistas son socios colaborativos

Comprar herramientas y manuales (DIY)

Compras la sierra, el nivel y el manual. La herramienta hace exactamente lo que le ordenas — y nada más. Si la pared está torcida, la sierra no te avisa. Es la herramienta estándar: fire-and-forget, un request perfectamente formateado → una response.

Contratar a quien hace cocinas para vivir

No entregas el plano y te vas. El especialista encuentra casos de borde, señala descuidos, pausa, consulta sobre trade-offs y retoma. Es un agente: un espacio de resolución de problemas unbounded.

El mundo real tiene estructuras de datos ambiguas, requisitos engañosos y preferencias de usuario conflictivas — el "equivalente digital de paredes torcidas". Rara vez es posible especificar todos los detalles sin clarificación multi-turno. Es esta necesidad de negociar, pausar y retomar lo que separa a un agente de una API.

14

El problema GOTO en la arquitectura agéntica

Forzar un dominio unbounded dentro de un wrapper de herramienta es el nuevo GOTO — y A2A es el bloque estructurado que faltaba.

El dominio de un agente es unbounded. Forzarlo dentro de un wrapper de herramienta síncrona equivale a resucitar el GOTO: el flujo de control abandona el contexto estructurado esperado y puede cualquier cosa — alcanzar un estado interrumpido, pedir más información, nunca devolver el output esperado, o ser abandonado cuando el usuario cambia de idea a mitad de camino.

Necesitamos un paradigma que aísle el estado multi-turno desordenado — un protocolo que permita pausar la ejecución → volver al Orchestrator → negociar → retomar sin perder el estado conversacional. A2A llena exactamente ese vacío. Al aislar el enrutamiento colaborativo en la capa A2A, la capa de herramientas (MCP) permanece limpia, predecible y estrictamente estructurada.

La pregunta decisiva (endnote 19)

"¿El llamador necesita un resultado, o el llamador necesita que otro participante asuma la responsabilidad?"

Resultado → herramienta (MCP). Responsabilidad → agente (A2A).

15

Construyendo la fuerza de trabajo virtual

A2A + especialización crean nuevos marketplaces de experiencia — con el Agent Card como currículum estandarizado.

A2A + especialización son la base de nuevos marketplaces de experiencia. Sin A2A, cada aplicación agéntica lucha sola contra la complejidad creciente. Con A2A, un desarrollador puede enfocarse en un nicho de alto valor — por ejemplo, "Cumplimiento Regulatorio en Tiempo Real" — y lograr que su especialista sea descubierto y "contratado" por orchestrators de todo el mundo.

🪪

El Agent Card — el "currículum" del mundo de la IA

Un documento estandarizado que cualquier orchestrator puede leer para decidir si contrata al especialista:

  • Capabilities: qué tareas ejecuta el agente
  • Security & Compliance: políticas de manejo de datos y requisitos de permisos
  • Interaction Schemas: cómo se comunican otros agentes vía A2A
🗂️

Los registries — donde se publica la experiencia

Dos canales de descubrimiento, dos modelos de gobernanza:

  • Registries públicos (marketplaces): la agencia de talento global — lista tu especialista y licencia la experiencia a miles
  • Registries privados: un entorno seguro y gobernado — workflows internos compartidos entre departamentos
En una frase

A2A transforma aplicaciones agénticas aisladas en miembros fundacionales de una fuerza de trabajo digital global e interoperable.

16

Implementando el protocolo A2A

Dos movimientos de desarrollo: exponer tu agente (oferta) y conectar agentes remotos (demanda).

Para convertir tu agente en un especialista contratable, tres etapas — de la tarjeta de visita al endpoint vivo:

🪪

1 · Agent Card

la especificación formal: capabilities, seguridad y schemas de interacción

🔁

2 · Agent Executor

la capa de traducción: requests/responses A2A ↔ llamadas del framework (ADK, LangGraph, bespoke)

🌐

3 · Endpoint A2A

el agente publicado y detectable en la red

Del lado de la demanda, el orchestrator entiende la intención del usuario, gestiona el workflow y delega en agentes A2A remotos — contratistas autónomos, limitados a su dominio. Dos patrones de conexión:

Patrón 1 · Punto a punto directo

Endpoint fijo y conocido — simple y predecible, ideal para integraciones estables.

pythonRemoteA2aAgent con endpoint hardcodeado
from google.adk.agents import LlmAgent
from google.adk.models import Gemini

def get_sales_dashboard(region: str) -> dict:
    """Build a data-bound sales dashboard for `region`."""
    data = fetch_sales(region)
    return {
        "version": "v0.9",
        "updateComponents": {
            "surfaceId": "sales",
            "components": [
                { "id": "root",  "component": "Column", "children": ["title", "total", "drill"] },
                { "id": "title", "component": "Text",   "text": { "path": "/title" }, "variant": "h1" },
                { "id": "total", "component": "Text",   "text": { "path": "/total" } },
                { "id": "drill", "component": "Button", "child": "drill-label",
                  "action": { "event": { "name": "expand_details" } } },
                { "id": "drill-label", "component": "Text", "text": "Drill Down" },
            ],
        },
    }

agent = LlmAgent(
    name="sales_agent",
    model=Gemini(model="gemini-flash-latest"),
    tools=[get_sales_dashboard],
)

# Conecte o conversor no setup do executor para que a resposta desta
# ferramenta vire uma parte A2UI:
#   from a2ui.adk.send_a2ui_to_client_toolset import A2uiPartConverter
#   A2aAgentExecutorConfig(event_converter=A2uiPartConverter(catalog, bypass_tool_check=True))

Patrón 2 · Descubrimiento vía Agent Registry

El orchestrator consulta el registry y resuelve al especialista dinámicamente — la base de la workforce virtual.

pythonregistry.get_remote_a2a_agent
agent = registry.get_remote_a2a_agent(
    capability="real_time_compliance",
)
# o registry resolve o Agent Card
# e devolve um agente pronto para uso
Figura 5 · el ciclo completo

La exposición (lado de la oferta) publica al especialista; el consumo (lado de la demanda) lo descubre y delega en él. Ambos lados se encuentran en el Agent Card — el contrato que hace interoperable a la workforce.

17

La capa de extensibilidad — y la monetización

A2A resuelve la fragmentación; las extensiones construyen aplicaciones transaccionales ricas encima — y abren la puerta al Agent-as-a-Service.

El núcleo de A2A es el backbone de transporte y negociación. Las aplicaciones transaccionales ricas requieren capacidades de orden superior — y el framework de A2A Extensions las estandariza: anunciar, negociar y ejecutar funcionalidades opcionales. Tres frameworks fundamentales viven como extensiones nativas:

🪟

A2UI

experiencias de usuario dinámicas y con estado.

🛒

UCP

comercio agéntico autónomo y seguro.

💳

AP2

pagos agénticos confiables y verificables.

Monetizando agentes A2A — el modelo Agent-as-a-Service

Siguiendo el paradigma del SaaS, el AaaS es un modelo basado en consumo, vendido por múltiples canales. Google Cloud Marketplace funciona como motor de monetización, y Gemini Enterprise actúa como plataforma agéntica — con Agent Registries y un cliente A2A nativo, siendo al mismo tiempo plataforma AaaS (Assistant API) y hospedaje de agentes remotos. Un modelo de precios híbrido común: "tarifa fija más uso" — base predecible + excedentes por token/cómputo.

📦

Publicar

exponer el agente con un Agent Card

🔍

Descubrir

los orchestrators lo encuentran en el registry

🤝

Negociar

términos y extensiones vía A2A

Ejecutar

la tarea se ejecuta en el especialista

💰

Monetizar

cobro por consumo / marketplace

Microtransacciones permissionless · x402 / L402

El framework de extensiones habilita el patrón x402 (o L402): el servidor intercepta una solicitud no pagada y responde con HTTP 402 Payment Required + una factura legible por máquina. El agente llamador paga autónomamente y reenvía con un token criptográfico de prueba de pago. Resultado: endpoints pay-per-call con facturación automatizada y estrictamente stateless.

18

Interoperabilidad Agent-to-UI (A2UI)

Los agentes no deberían devolver solo JSON — deberían devolver interfaces completas, con seguridad.

La brecha de comunicación: pregúntale a un colega "¿cómo fue el Q4 por región?" y dibuja un gráfico de barras, rodea los destacados y agrega contexto. Un agente devuelve JSON puro — y tú construyes el gráfico solo: importas bibliotecas, configuras ejes, gestionas estado. Ese cambio de contexto rompe el flujo del vibe coding. A2UI cambia el juego: los agentes generan UIs interactivas completas como output, no solo blobs de JSON.

Generative UI es el LLM creando interfaces dinámicamente en tiempo de ejecución, basado en la intención y el contexto del usuario. En lugar de hardcodear cada estado de UI, el modelo compone la interfaz adecuada bajo demanda: "compara las ventas del Q4 por región" → el sistema ensambla un layout interactivo con cards, filtros y controles. El desafío central es la seguridad: inyección de código, XSS y efectos secundarios descontrolados.

🎼Analogía · La partitura

El compositor no entrega la grabación — entrega la partitura

La partitura

La misma partitura suena en piano, orquesta o sintetizador — cada instrumento la interpreta con su propia voz. A2UI es la partitura de la UI: el agente escribe la intención, y cualquier renderer (React, Angular, Lit, Flutter, Jetpack Compose, SwiftUI) la ejecuta nativamente.

Separación de responsabilidades = seguridad

El agente no genera código ejecutable (una pesadilla de seguridad) ni envía píxeles pre-renderizados (sin reflow, sin interacción). Pide componentes de un catálogo confiable; el cliente los ensambla con su propia biblioteca. "Composicional, como bloques de LEGO — pero los bloques son componentes de UI de tu design system."

El agente no necesita saber el destino (web, móvil, wearable, electrodoméstico) — solo conoce el catálogo y los ejemplos. El catálogo define lo que está disponible, el agente decide la disposición, el cliente ensambla.

20

Generando A2UI: dos patrones

La elección fundamental: ¿dónde vive la decisión de layout — en el LLM o en la herramienta?

🧠

Patrón 1 · El LLM genera A2UI directamente (predeterminado)

layout guiado por la intención
  • el modelo es dueño del layout y se adapta a la intención del usuario
  • el mismo agente responde a "compara regiones" y "muestra tendencias" con interfaces diferentes
  • en producción: usa el a2ui-agent-sdk oficial
🧩

Patrón 2 · La herramienta devuelve estructura fija (especialización)

layout guiado por el input
  • una llamada de herramienta, cero tokens de LLM en generación de UI, totalmente predecible
  • correcto cuando el layout es determinístico a partir de los inputs — la herramienta se convierte en un template server-side
  • la herramienta hace dos cosas: construye la estructura con data bindings (referencias de path, no f-strings) y la devuelve; el A2uiPartConverter intercepta y la enruta al cliente como parte A2UI — la herramienta sigue siendo una función Python común
pythonSnippet 5 · el patrón LLM-generates-UI — herramienta como template con data bindings
from google.adk.agents import LlmAgent
from google.adk.models import Gemini

def get_sales_dashboard(region: str) -> dict:
    """Build a data-bound sales dashboard for `region`."""
    data = fetch_sales(region)
    return {
        "version": "v0.9",
        "updateComponents": {
            "surfaceId": "sales",
            "components": [
                { "id": "root",  "component": "Column", "children": ["title", "total", "drill"] },
                { "id": "title", "component": "Text",   "text": { "path": "/title" }, "variant": "h1" },
                { "id": "total", "component": "Text",   "text": { "path": "/total" } },
                { "id": "drill", "component": "Button", "child": "drill-label",
                  "action": { "event": { "name": "expand_details" } } },
                { "id": "drill-label", "component": "Text", "text": "Drill Down" },
            ],
        },
    }

agent = LlmAgent(
    name="sales_agent",
    model=Gemini(model="gemini-flash-latest"),
    tools=[get_sales_dashboard],
)

# Conecte o conversor no setup do executor para que a resposta desta
# ferramenta vire uma parte A2UI:
#   from a2ui.adk.send_a2ui_to_client_toolset import A2uiPartConverter
#   A2aAgentExecutorConfig(event_converter=A2uiPartConverter(catalog, bypass_tool_check=True))

Los valores de datos llegan en un mensaje paralelo updateDataModel que resuelve referencias {path: "/title"} — los clientes re-renderizan en las actualizaciones de datos sin reenviar la estructura. Y el LLM solo ve la respuesta estructurada de la herramienta (no la UI renderizada), así que el contexto permanece enfocado.

Consulta del usuarioTipo de outputQuién decide el layout
"¿Cuál es el promedio?"Datos (texto)
"Compara estas regiones"UI generada por el LLMel modelo (intención)
"Muestra mi dashboard"UI construida por la herramientatemplate determinístico
API-a-APIDatos (JSON)
Regla de decisión

Usa A2UI cuando la interacción/visualización agrega valor más allá de los datos brutos. Elige el patrón por quién es dueño del layout: el LLM (guiado por intención) o un template determinístico (guiado por input).

21

Artefactos interactivos & el Canvas

Cuando la UI deja de ser output y se convierte en un espacio de trabajo vivo, editado por agente y humano en tiempo real.

El chat tradicional es lineal: cada respuesta es estática. El Canvas es un workspace persistente que agente y usuario editan juntos — un documento vivo donde el agente modifica secciones y tú editas manualmente, en tiempo real. Combinado con A2UI, la persistencia se encuentra con la interactividad: la UI no solo se renderiza — es un medio de comunicación. El agente observa tus interacciones y responde en consecuencia.

👤

User

edita, hace clic, ajusta

🤖

Agent

observa y responde

🗒️

Canvas

workspace persistente + A2UI interactivo

Buenas prácticas — deja que el LLM genere A2UI

Escribir JSON A2UI a mano es tedioso. Usa el SDK oficial (pip install a2ui-agent-sdk): el A2uiSchemaManager construye el system prompt con el schema del catálogo + ejemplos trabajados; el catálogo trae su propio validador JSON-Schema; el SDK proporciona un parser para bloques <a2ui-json> y valida y reintenta en errores de schema.

pythonSnippet 6 · A2uiSchemaManager
from a2ui_agent_sdk import A2uiSchemaManager

manager = A2uiSchemaManager(catalog="basic")
system_prompt = manager.build_prompt()   # schema + exemplos

try:
    ui = manager.parse(llm_output)        # valida o JSON
except SchemaError:
    ui = fallback_text(llm_output)        # nunca vaze payload malformado
Producción

Envuelve create_ui() en try/except y cae a texto en fallos de validación. El output del LLM es estocástico — el renderer nunca debe ver un payload malformado.

Output híbrido para flexibilidad

Proporciona datos y UI juntos — cada consumidor elige. Los clientes de API ignoran el campo ui y usan data; los clientes orientados a humanos renderizan el mensaje A2UI.

jsonSnippet 7 · schema de output híbrido
{
  "data": { "avg": 42.7, "regions": ["…"] },                                  // para APIs
  "ui":   { "version": "v0.9",
           "updateComponents": { "surfaceId": "main", "components": ["…A2UI…"] } }, // para humanos
  "ui_available": true                                                    // sinaliza a UI
}
Resumen de A2UI

Generative UI crea interfaces en tiempo de ejecución a partir de la intención; A2UI es el estándar open-source de Google, agnóstico al framework, para declarar intención de UI. El mismo mensaje se renderiza nativamente en Lit, Flutter, React o tu design system — y el modelo de seguridad garantiza que el agente no inyecta código arbitrario, solo pide componentes de un catálogo confiable.

22

Agentes y comercio — AP2 y UCP

De operaciones de "lectura" a acciones con implicaciones financieras reales — la madrugada del burrito a las 2.

Las secciones anteriores cubrieron operaciones de "lectura" (MCP, A2A, A2UI). La evolución natural: los agentes necesitan ejecutar "acciones" con implicaciones financieras en el mundo real. Priorizar protocolos de comercio + un harness operativo robusto es lo que los convierte en estándares de la industria para transacciones.

🌯Analogía · El delivery de las 2 AM

Tú y tus compañeros de piso, hambrientos, despliegan un asistente de IA para pedir comida

UCP · la app de delivery definitiva

En 2024, la IA abría Chrome, hacía clic en "guacamole extra" en un sitio mal diseñado y cruzaba los dedos para que no se colgara. Con UCP, cada restaurante publica su menú, horarios y personalizaciones en un lenguaje de máquina estándar. La IA pregunta "¿siguen abiertos? ¿tienen burrito vegetariano?", arma el pedido y el restaurante responde con impuestos, costo de envío y ETA. "UCP es cómo tu IA habla con la tienda, revisa las opciones y arma el pedido perfecto."

AP2 · la tarjeta de tus padres con reglas estrictas

La comida está en el carrito y la IA necesita pagar — y no vas a escribir tu PIN de débito en un prompt y decir "dale con todo." AP2 es un protocolo abierto con un lenguaje común para transacciones seguras. El Mandate: apruebas la regla "gasta hasta $25 en Taco Bell." El Handshake: la IA presenta un pagaré cifrado y firmado por ti; el banco del restaurante verifica la firma. Sin cargos ocultos: si el restaurante intenta cobrar $50 en vez de $18.50, AP2 lo bloquea al instante. "AP2 es la bóveda que deja que tu IA pague con tu dinero, pero garantiza que nunca compre un televisor de $1,000 por error."

1

Descubrir el menú

el restaurante publica su menú y horarios en un lenguaje de máquina estándar.

UCP
2

Armar el pedido

la IA pregunta, personaliza y arma el carrito; el restaurante responde con impuestos, tarifas y ETA.

UCP
3

Verificar el mandate

la regla digital que aprobaste ("hasta $25") se verifica antes de cualquier pago.

AP2
4

Handshake firmado

la IA presenta el pagaré cifrado; el banco del restaurante valida la firma digital.

AP2
5

Bloquear discrepancias

un cargo fuera de lo firmado ($50 ≠ $18.50) se rechaza al instante — sin cargos ocultos.

AP2
6

Confirmar el pedido

transacción verificada, pedido confirmado — el burrito está en camino.

UCP
UCPAP2
Rolel cerebro que decide qué comprar — maneja el menú y pone la comida en el carritola cartera que se encarga de cómo pagar de forma segura, sin caer en estafas
Se integra concualquier proveedor de negocioel ecosistema de pagos
Pilaresintegración unificada · lenguaje compartido · arquitectura extensible · security-firstautorización & auditabilidad · autenticidad de intención · accountability por errores y alucinaciones del agente

Características clave y beneficios de los protocolos: typed schemas, seguridad y open source — la combinación que ataca de frente la deuda de integración y garantiza neutralidad de vendor.

Manos a la obra

El laboratorio recomienda el codelab codelabs.developers.google.com/next26/adk-agent-commerce para ver AP2 + UCP funcionando juntos.

23

Conclusión: de mecánico a arquitecto

Adoptar los estándares fundamentales elimina la aplastante deuda técnica de las integraciones bespoke.

1

Los estándares eliminan la deuda

Adoptar MCP, A2A, A2UI, AP2 y UCP elimina la aplastante deuda técnica de las integraciones bespoke — y libera el enfoque total para orquestar lógica de negocio de alto valor.

2

Un cambio de paradigma

El desarrollador deja de ser el mecánico que cablea APIs frágiles y se convierte en el arquitecto de una fuerza de trabajo autónoma global.

3

Nuevas economías de escala

A medida que las capas de comunicación estandarizada maduran, desbloquean economías de escala completamente nuevas — transformando cómo el software empresarial se construye, consume y monetiza.

"La próxima evolución del software no se escribe:
se orquesta mediante agentes interoperables."
— Agent Tools & Interoperability · Google · Mayo 2026
24

Quiz — pon a prueba tu dominio del stack

8 preguntas sobre protocolos, arquitectura y comercio agéntico.

pergunta 1 / 8
0/8

25

Cheatsheets

Tres referencias rápidas para copiar y pegar en tu workflow.

mcp-consumption.md
# MCP — CHECKLIST DE CONSUMOFAÇA auditar servidores públicos antes de conectar (revise o código) usar RAG para ferramentas (carregar/descartar schemas dinamicamente) preferir API Gateways e registries internos (schemas governados) debugar com MCP Inspector (dados raw, não prompt às cegas) incluir HITL (mostrar inputs antes da chamada) logar uso de ferramentas para auditoriaNÃO FAÇA✗ construir se pode consumir — procure um servidor MCP existente✗ MCPs públicos não verificados em produção✗ hardcodar credenciais — use variáveis de ambiente✗ conectar em produção — use projeto dev + dados ofuscados✗ usar para updates — read-only com dados reais✗ acesso amplo a todos os projetos — escopo específico
a2a-implementation.md
# A2A — RECEITA DE IMPLEMENTAÇÃOEXPOR (supply side)1. definir o Agent Card  → capabilities · security · interaction schemas 2. implementar o Agent Executor (camada de tradução) → requests/responses A2A ↔ framework (ADK / LangGraph / bespoke) 3. estabelecer o endpoint A2ACONECTAR (demand side)# Padrão 1 · ponto a ponto diretoagent = RemoteA2aAgent(name="x", url="https://…/a2a")# Padrão 2 · descoberta via registryagent = registry.get_remote_a2a_agent(capability="…")REGRA DE DECISÃOchamador precisa de resultado      → ferramenta (MCP) chamador precisa de responsabilidade → agente (A2A)
a2ui-quickref.md
# A2UI — REFERÊNCIA RÁPIDACATÁLOGO BÁSICO (18 componentes)layout:      Row · Column · List display:     Text · Image · Icon · Divider containers:  Card · Modal · Tabs media:       Video · AudioPlayer interactive: Button · TextField · CheckBox · Slider · DateTimeInput · ChoicePickerDOIS PADRÕES DE GERAÇÃO1. LLM gera A2UI     → layout guiado pela intenção (use a2ui-agent-sdk) 2. Ferramenta devolve → layout determinístico, zero tokens de UIQUANDO USAR"qual é a média?"        → dados (texto) "compare estas regiões"  → UI gerada pelo LLM "mostre meu dashboard"   → UI construída pela ferramenta API-para-API             → dados (JSON)SEGURANÇAagente pede componentes do catálogo — nunca injeta código arbitrário
26

Empieza ahora — checklists

Tres pistas prácticas. Marca lo que ya hiciste — el progreso se guarda en tu navegador.

🔌Adoptar MCP en tu workflow

Auditar un servidor MCP público antes de conectar
Configurar credenciales mediante variables de entorno
Conectar y validar los schemas vía handshake
Depurar un payload con el MCP Inspector
Agregar HITL antes de llamadas sensibles
0 / 5

🤖Construir una arquitectura multi-agente

Especializar: particionar el monolito en sub-agentes enfocados
Aplicar la lente build vs. buy a cada especialista
Exponer un agente con Agent Card + Executor + endpoint
Conectar un especialista remoto vía registry
Publicar el especialista en un registry (público o privado)
0 / 5

🪟Habilitar UI generativa y comercio

Instalar el a2ui-agent-sdk y generar una UI con el LLM
Mapear los componentes de tu design system al catálogo
Elegir el patrón de generación (LLM vs. herramienta)
Definir un mandate AP2 para una transacción de prueba
Ejecutar el codelab de agent commerce (UCP + AP2)
0 / 5
27

Glosario

Los términos esenciales del paper, en lenguaje directo.

MCP
Model Context Protocol — el "USB-C" que conecta modelos a bases de datos, sistemas de archivos y APIs web mediante un socket estandarizado.
A2A
Agent-to-Agent — protocolo para que los agentes descubran, negocien y deleguen trabajo a través de fronteras de red.
A2UI
Agent-to-User Interface — estándar open-source para que los agentes declaren intención de UI de forma segura (la "partitura").
AP2
Agent Payments Protocol — pagos agénticos seguros y verificables, con mandate y handshake firmado.
UCP
Universal Commerce Protocol — lenguaje estándar para que el agente descubra productos, arme pedidos e interactúe con el comercio.
Agent Card
el "currículo" estandarizado de un agente: capabilities, seguridad/compliance y schemas de interacción.
Agent Registry
un directorio (público o privado) donde los especialistas se publican y descubren — la agencia de talentos de la workforce virtual.
Harness
el andamiaje alrededor del modelo — herramientas, transporte, memoria y seguridad. Agent = Model + Harness.
Orchestrator
el agente (o dev) que entiende la intención, gestiona el workflow y delega a especialistas — en vez de cablear cada conexión.
Conductor
el rol opuesto: cableado manual y punto a punto de cada integración — lo que los protocolos eliminan.
Problema NxM
la explosión combinatoria de N modelos × M herramientas (O(N×M)); MCP la reduce a O(N+M).
stdio / SSE
los dos transportes MCP: stdio para subproceso local/prototipado; SSE over HTTP para streaming en tiempo real, local o remoto.
Generative UI
LLMs creando interfaces dinámicamente en tiempo de ejecución, basándose en la intención y el contexto del usuario.
Agent-as-a-Service (AaaS)
un modelo de monetización basado en consumo para agentes — el SaaS de la fuerza de trabajo agéntica.
x402 / L402
estándares de microtransacción permissionless: HTTP 402 + factura legible por máquina + token criptográfico de prueba de pago.
Mandate (AP2)
la regla digital aprobada por el humano que limita lo que el agente puede gastar — ej.: "hasta $25 en Taco Bell."
28

Continúa el recorrido

Los papers compañeros de la serie — cada guía sigue el mismo formato interactivo y trilingüe.

HUBpunto de partida

Serie Agents Whitepaper — hub

Todas las guías de la serie, en un solo lugar.

índicenavegación
D1fundamentos

The New SDLC with Vibe Coding

Agentic Engineering, el Factory Model y la ecuación Agent = Model + Harness.

vibe codingfactory modelharness
D3contexto & memoria

Context Engineering: Sessions, Memory

Cómo ensamblar la información correcta dentro de la context window, turno a turno.

sessionsmemoryRAG
D4seguridad & evaluación

Vibe Coding Agent Security and Evaluation

Cómo evaluar y proteger agentes: quality gates, métricas y seguridad en producción.

evaluationquality gatesagent security
D5producción

Spec-Driven Production Grade Development

Desarrollo guiado por specs para llevar el vibe coding a nivel de producción.

spec-drivenproduction gradeworkflow
29

Referencias

Las 21 endnotes del paper original, en el orden en que aparecen.

Cita del paper

PATLOLLA, Kanchana; OLEJNICZAK, Łukasz; IPPOLITO, Pier Paolo. "Agent Tools & Interoperability" — Agents Whitepaper Series, Google, Mayo 2026.