Agent2Agent (A2A) Protocol

Agent2Agent (A2A) Protocol je otvorený štandard pre komunikáciu medzi AI agentmi. Predstav si to ako spoločný „jazyk", vďaka ktorému môže tvoj agent požiadať cudzí (remote) agentický systém o prácu — bez toho, aby musel poznať jeho internú logiku.


1. Čo to je (definícia + analógia)

  • Definícia: A2A je protokol, ktorý štandardizuje, ako si agenti posielajú požiadavky, priebežný stav a výsledky (vrátane dlhších úloh).

  • Analógia: Ak je API „zásuvka" pre aplikácie, A2A je „telefónny protokol" pre agentov — dohodnú sa na formáte hovoru, aj keď každý z nich má vlastný mozog a vlastné nástroje.

  • Prečo to vzniklo: Agentické systémy rastú rýchlo, ale bez štandardu vzniká chaos integrácií „každý s každým". Google A2A predstavil v apríli 2025 s podporou 50+ partnerov.

  • Kto za tým stojí: Primárne Google, s podporou firiem ako Salesforce, SAP, Atlassian, MongoDB, Deloitte, Accenture, LangChain, CrewAI a ďalších.


2. Stavebné bloky protokolu

A2A definuje 5 kľúčových konceptov:

Koncept Čo to je Analógia
Agent Card JSON „vizitka" agenta: identita, endpoint, schopnosti, autentifikácia, zoznam skillov Profil na LinkedIn
Message Jednorazová výmena správ medzi agentmi (otázka → odpoveď) SMS správa
Task Stavová úloha s lifecycle (submittedworkingcompleted / failed) Ticket v issue trackeri
Artifact Štruktúrovaný výstup úlohy (dokument, súbor, JSON, tabuľka) Príloha v emaili
contextId Identifikátor, ktorý zoskupuje súvisiace interakcie do jednej „témy" Vlákno v chate

3. Ako to funguje (krok za krokom)

Typický priebeh A2A komunikácie:

┌──────────────┐                    ┌──────────────┐
│  Client Agent │                    │  Remote Agent │
│  (žiadateľ)  │                    │  (vykonávateľ)│
└──────┬───────┘                    └──────┬───────┘
       │  1) GET /.well-known/agent.json   │
       │ ──────────────────────────────►   │
       │  ◄── Agent Card (skills, auth)    │
       │                                   │
       │  2) POST /tasks (nová úloha)      │
       │ ──────────────────────────────►   │
       │  ◄── Task { id, status: working } │
       │                                   │
       │  3) Priebežný update              │
       │  ◄── streaming / webhook / poll   │
       │                                   │
       │  4) Výsledok                      │
       │  ◄── Task { status: completed,    │
       │           artifacts: [...] }      │
       └───────────────────────────────────┘

Detailnejšie:

  • 1) Objavenie agenta (discovery):

    • Agent si najprv zistí, čo ten druhý agent vie — stiahne si Agent Card z dobre známej URL (/.well-known/agent.json).
    • Agent Card obsahuje: meno, popis, URL endpoint, podporované skills, autentifikačné požiadavky, podporované modality (text, súbory, štruktúrované dáta).
  • 2) Odoslanie správy alebo štart úlohy:

    • Jednoduché veci idú ako Message (jednorazová výmena).
    • Zložitejšie sa zmenia na Task (stavová úloha s lifecycle).
    • Každá správa môže obsahovať Parts — časti rôznych typov (text, súbor, dáta).
  • 3) Priebežné výsledky a stav:

    • Pri dlhšej úlohe môže agent posielať update cez:
      • Polling (request/response) — klient sa pýta „už to je?"
      • Streaming (SSE) — výsledky chodia postupne v reálnom čase
      • Push (webhook) — server zavolá späť, keď sa niečo zmení
  • 4) Výstupy ako „Artifacts":

    • Výsledok nemusí byť len text. Artifact môže byť PDF, CSV, JSON, obrázok alebo akékoľvek štruktúrované dáta.
  • 5) Kontext naprieč krokmi:

    • contextId zoskupuje súvisiace interakcie, aby sa viac úloh držalo jednej „témy" — podobne ako vlákno v chate.

4. A2A vs. MCP — kľúčový rozdiel

Tieto dva protokoly sa často zamieňajú, ale riešia iný problém:

A2A MCP
Čo spája Agent ↔ Agent Agent ↔ Nástroje/Dáta
Analógia Dvaja kolegovia si delegujú prácu Jeden kolega používa nástroje (kalkulačka, databáza, email)
Komunikácia Výmena úloh, stavov a artefaktov Volanie funkcií (tool calls)
Výstupy Tasks + Artifacts (dlhodobé) Tool results (okamžité)
Discovery Agent Card (skills, auth) Tool list (názov, parametre)
Stavovosť Áno — úlohy majú lifecycle Nie — každé volanie je nezávislé
Typický scenár „Agent, urob mi analýzu trhu" „Daj mi dáta z databázy XY"
Autor Google (2025) Anthropic (2024)

V praxi sa kombinujú: Agent používa MCP na prístup k nástrojom a dátam, a A2A na delegovanie práce iným agentom. Nie sú konkurenti — sú komplementárne vrstvy.


5. Konkrétny príklad: 3 agenti pripravujú report

Používateľ: „Priprav mi týždenný report predaja pre EMEA región."

┌─────────────────────────────────────────────────────────────┐
│  Orchestrator Agent (hlavný agent)                          │
│  1. Rozloží úlohu na časti                                  │
│  2. Deleguje cez A2A:                                       │
│     ├── Data Agent: „Daj mi predaje EMEA za posledný týždeň"│
│     │   └── (používa MCP na query do databázy)              │
│     │   └── vráti Artifact: JSON s dátami                   │
│     │                                                       │
│     ├── Analytics Agent: „Analyzuj tieto dáta, nájdi trendy"│
│     │   └── vráti Artifact: analýza + grafy                 │
│     │                                                       │
│     └── Report Agent: „Zlož to do PDF reportu"              │
│         └── vráti Artifact: report.pdf                      │
│                                                             │
│  3. Skontroluje výsledky, zloží finálny output              │
│  4. Vráti používateľovi hotový report                       │
└─────────────────────────────────────────────────────────────┘

Každý agent je nezávislý — môže bežať na inom serveri, v inom frameworku, dokonca u inej firmy. A2A zabezpečuje, že si rozumejú.


6. Bezpečnosť a súkromie

A2A komunikácia prebieha medzi systémami, často naprieč organizáciami — bezpečnosť je kritická:

  • Autentifikácia a autorizácia:

    • Agent Card definuje, aký typ autentifikácie agent vyžaduje (OAuth 2.0, API keys, mTLS).
    • Klient musí preukázať identitu pred tým, než môže posielať úlohy.
    • Princíp least privilege: agent by mal mať prístup len k tým skills, ktoré skutočne potrebuje.
  • Opacity (nepriehľadnosť):

    • Kľúčový dizajnový princíp A2A — agenti sú opaque (nepriehľadní).
    • Client agent nevidí interné nástroje, prompty ani logiku remote agenta — vidí len jeho skills a výstupy.
    • Toto chráni intelektuálne vlastníctvo a zabraňuje prompt injection naprieč agentmi.
  • Riziká v praxi:

Riziko Popis Mitigácia
Prompt injection cez artifact Škodlivý agent vloží inštrukcie do výstupu Validácia a sanitizácia artefaktov
Confused deputy Agent vykoná akciu v mene neautorizovaného klienta Per-task autorizácia, audit log
Data exfiltration Remote agent odošle citlivé dáta tretej strane Network policies, monitoring, sandboxing
Agent impersonation Falošný agent sa vydáva za legitímny Verifikácia Agent Card, TLS, registry dôvery
Cascading failures Zlyhanie jedného agenta zrúti celý workflow Timeouty, circuit breakers, fallback stratégie
  • Praktické odporúčania:
    • Používaj len agentov z overených registrov alebo od dôveryhodných poskytovateľov.
    • Loguj všetky A2A interakcie (kto, čo, kedy, s akým výsledkom).
    • Nastav timeouty na úlohy — dlho bežiaci task môže byť znak problému.
    • Pri cross-org komunikácii vyžaduj mTLS a explicitný consent na zdieľanie dát.

7. Ekosystém a adopcia

  • Špecifikácia: otvorený štandard, GitHub repozitár pod Google.
  • Podporované frameworky: LangChain, CrewAI, Google ADK (Agent Development Kit), Vertex AI Agent Builder.
  • Enterprise adopcia: Salesforce, SAP, Atlassian, ServiceNow, MongoDB, Deloitte, KPMG, Accenture — signalizuje silnú enterprise orientáciu.
  • Vzťah k iným štandardom:
    • MCP (Anthropic) — komplementárny, nie konkurenčný (viď sekcia 4).
    • OpenAI function calling — low-level tool-use, A2A je vyššia vrstva.
    • FIPA ACL — starší štandard pre multi-agent systémy, A2A je jeho moderný nástupca.

8. Quick Reference

Parameter Hodnota Poznámka
Účel Štandardná komunikácia agent ↔ agent „Telefónny protokol pre agentov"
Autor Google (apríl 2025) 50+ launch partnerov
Discovery Agent Card (/.well-known/agent.json) JSON vizitka agenta
Komunikácia Message (jednorazová) / Task (stavová) JSON cez HTTPS
Výstupy Artifacts (súbory, dáta, dokumenty) Multimodálne
Doručovanie Polling, SSE streaming, webhook push 3 mechanizmy
Kontext contextId Zoskupuje súvisiace interakcie
Autentifikácia OAuth 2.0, API keys, mTLS Definovaná v Agent Card
Kľúčový princíp Opacity — agenti nevidia internú logiku druhého Ochrana IP + bezpečnosť
Vzťah k MCP Komplementárny (A2A = agent↔agent, MCP = agent↔tools) Nie konkurenti
Licencia Open standard Apache 2.0

Zhrnutie

  • A2A je otvorený protokol, ktorý štandardizuje komunikáciu medzi AI agentmi cez správy, úlohy a artefakty — iniciovaný Googlom s podporou 50+ firiem.

  • Kľúčové stavebné bloky sú Agent Card (discovery), Task (lifecycle úlohy), Message (výmena správ), Artifact (štruktúrované výstupy) a contextId (udržanie témy).

  • A2A a MCP nie sú konkurenti — A2A rieši komunikáciu agent↔agent, MCP rieši agent↔nástroje. V praxi sa kombinujú.

  • Najväčší prínos je interoperabilita — agenti z rôznych frameworkov a organizácií si vedia delegovať prácu bez custom integrácií.

  • Najväčšie riziko je bezpečnosť pri cross-org komunikácii — vyžaduje silnú autentifikáciu, audit, opacity a disciplínu v riadení oprávnení.