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.

Keď Google v apríli 2025 predstavil A2A s podporou 50+ partnerov, išlo o odpoveď na rastúci chaos v agentickej krajine: každý framework mal vlastný spôsob, ako agenty komunikujú, čo znamenalo vlastnú integráciu pre každý pár systémov. O rok neskôr sa A2A etabloval ako de facto štandard pre enterprise multi-agent systémy a jeho adopcia výrazne zrýchlila.


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 asynchrónnych úloh bežiacich niekoľko minút alebo hodín.

  • Analógia: Ak je REST API „zásuvka" pre aplikácie a MCP je „toolbox" pre agenta, A2A je „telefónny protokol" pre agentov — dohodnutý formát 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". Namiesto N² custom integrácií stačí jeden protokol, ktorý všetci rozumejú.

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


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

Task lifecycle je pritom jadrom celého protokolu. Úloha prechádza stavmi:

submitted → working → [input-required] → working → completed
                                                  ↘ failed
                                                  ↘ cancelled

Stav input-required je dôležitý pre human-in-the-loop scenáre — agent môže pozastaviť úlohu a opýtať sa používateľa alebo iného systému na doplňujúce informácie pred pokračovaním.


3. Agent Card — vizitka agenta v praxi

Agent Card je základným stavebným kameňom discovery mechanizmu. Každý A2A-kompatibilný agent ju publikuje na štandardizovanej URL a akýkoľvek klient si ju môže stiahnuť bez predchádzajúcej dohody.

Príklad Agent Card (skrátená):

{
  "name": "EMEA Sales Analytics Agent",
  "description": "Analyzuje predajné dáta pre EMEA región, generuje reporty a trendy.",
  "url": "https://analytics.example.com/a2a",
  "version": "1.2.0",
  "capabilities": {
    "streaming": true,
    "pushNotifications": true,
    "stateTransitionHistory": false
  },
  "authentication": {
    "schemes": ["oauth2", "bearer"]
  },
  "skills": [
    {
      "id": "weekly-report",
      "name": "Weekly Sales Report",
      "description": "Generuje týždenný report predaja pre zadaný región.",
      "inputModes": ["text", "data"],
      "outputModes": ["text", "file", "data"],
      "tags": ["sales", "reporting", "emea"]
    },
    {
      "id": "trend-analysis",
      "name": "Trend Analysis",
      "description": "Identifikuje predajné trendy za zadané obdobie.",
      "inputModes": ["data"],
      "outputModes": ["data", "file"]
    }
  ],
  "defaultInputModes": ["text"],
  "defaultOutputModes": ["text", "data"]
}

Klient z tejto vizitky vie: čo agent vie robiť, ako sa autentifikovať, aké formáty podporuje, a či vie streamovať výsledky. Nie sú potrebné žiadne dokumenty ani manuálne nastavenie.


4. 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: [...] }      │
       └───────────────────────────────────┘
  • Objavenie agenta (discovery): Agent stiahne Agent Card z dobre známej URL (/.well-known/agent.json). Obsahuje: meno, popis, URL endpoint, skills, autentifikačné požiadavky, podporované modality.

  • Odoslanie správy alebo štart úlohy: Jednoduché veci idú ako Message (jednorazová výmena). Zložitejšie sa zmenia na Task so stavovým lifecycle. Každá správa môže obsahovať Parts — časti rôznych typov (text, súbor, štruktúrované dáta).

  • Priebežné výsledky a stav: Pri dlhšej úlohe môže agent posielať update cez polling (klient sa pýta), SSE streaming (výsledky chodia postupne) alebo webhook push (server zavolá späť).

  • Výstupy ako Artifacts: Artifact môže byť PDF, CSV, JSON, obrázok alebo akékoľvek štruktúrované dáta — nie len text.

  • Kontext naprieč krokmi: contextId zoskupuje súvisiace interakcie, aby sa viac úloh držalo jednej „témy".


5. 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 rovnakého stacku.

Praktické pravidlo: ak voláš funkciu, použiješ MCP. Ak deleguješ úlohu inému agentovi, použiješ A2A.


6. Vzory orchestrácie v multi-agent systémoch

A2A podporuje niekoľko architektonických vzorov, ktoré sa objavujú v praxi:

a) Hierarchický orchestrátor (Hub & Spoke)

Jeden hlavný agent rozkladá úlohu a deleguje časti špecializovaným agentom. Výsledky zbiera a skladá do finálneho výstupu. Najčastejší vzor pre enterprise workflows.

b) Pipeline (reťaz agentov)

Výstup jedného agenta je vstupom nasledujúceho. Vhodné pre sekvenčné spracovanie — napr. extrakcia dát → analýza → vizualizácia → report.

c) Paralelná exekúcia

Orchestrátor spustí viacero agentov naraz (každý rieši inú časť problému) a čaká na všetky výsledky pred syntézou. Dramaticky skracuje celkový čas spracovania.

d) Rekurzívna delegácia

Agent môže sám vystupovať ako orchestrátor a delegovať ďalej. Vzniká strom agentov. Dôležité je mať limity hĺbky a timeouty, inak hrozí nekontrolovaný rast.

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

┌─────────────────────────────────────────────────────────────┐
│  Orchestrator Agent                                         │
│  1. Rozloží úlohu, deleguje cez A2A:                        │
│                                                             │
│  ├── Data Agent: „Daj mi predaje EMEA za posledný týždeň"  │
│  │   └── (používa MCP → query do databázy)                 │
│  │   └── vráti Artifact: JSON s dátami                     │
│  │                                                          │
│  ├── Analytics Agent: „Analyzuj, nájdi trendy"             │
│  │   └── vráti Artifact: analýza + grafy                   │
│  │                                                          │
│  └── Report Agent: „Zlož do PDF"                           │
│      └── vráti Artifact: report.pdf                        │
│                                                             │
│  2. Skontroluje výsledky, vráti finálny output             │
└─────────────────────────────────────────────────────────────┘

Každý agent je nezávislý — môže bežať na inom serveri, v inom frameworku, dokonca u inej firmy.


7. 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 — agenti sú opaque (nepriehľadní).
  • Client agent nevidí interné nástroje, prompty ani logiku remote agenta — vidí len skills a výstupy.
  • Chráni intelektuálne vlastníctvo a zabraňuje prompt injection naprieč agentmi.

Riziká a mitigácie:

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.

8. Ekosystém a adopcia v roku 2026

Od prvého vydania v apríli 2025 prešla A2A ekosystém výrazným rastom:

Frameworky a platformy:

Framework / Platforma Podpora A2A Poznámka
Google ADK Natívna Referenčná implementácia
Vertex AI Agent Builder Natívna Plná integrácia s Google Cloud
LangChain / LangGraph Natívna Vrátane LangGraph multi-agent workflows
CrewAI Natívna Orchestrácia multi-agent crews
AutoGen (Microsoft) Komunitná Adapter dostupný v ekosystéme
Semantic Kernel Experimentálna Microsoft roadmap
Haystack Komunitná Pipeline-first framework

Enterprise adopcia: Salesforce, SAP, Atlassian, ServiceNow, MongoDB, Deloitte, KPMG, Accenture patrí medzi najviditeľnejších adoptérov — signalizuje silnú enterprise orientáciu protokolu. Väčšina týchto firiem integruje A2A do vlastných agentických platforiem, čo zákazníkom umožňuje prepájať procesy naprieč systémami bez custom integrácií.

Vzťah k iným štandardom:

  • MCP (Anthropic) — komplementárny, nie konkurenčný (viď sekcia 5).
  • OpenAI Assistants API — proprietárny prístup, A2A je open standard; interoperabilita zatiaľ len cez adaptery.
  • FIPA ACL — starší akademický štandard pre multi-agent systémy z 90. rokov. A2A je jeho moderný, HTTP-natívny nástupca.

Smerovanie v roku 2026: Diskusie o formalizácii A2A cez štandardizačný orgán (IETF alebo W3C) prebiehajú — podobne ako sa OpenAPI z interného nástroja Swagger stalo priemyselným štandardom. Agent registry — centrálne katalógy dôveryhodných agentov — začínajú vznikať ako dôležitý komponent bezpečnej multi-org orchestrácie.


9. Kedy A2A použiť (a kedy nie)

A2A je vhodné, keď:

  • Potrebuješ delegovať úlohu agentovi od iného tímu, firmy alebo na inom serveri.
  • Úloha je asynchrónna a trvá dlhšie (sekundy až hodiny).
  • Výstupom je štruktúrovaný artefakt (súbor, dokument, dataset), nie len odpoveď v chate.
  • Chceš zachovať opacity — nechceš odhaľovať internú logiku svojho agenta.

A2A nie je vhodné, keď:

  • Voláš len funkciu alebo nástroj (na to slúži MCP alebo priamy function call).
  • Komunikuješ priamo s používateľom (to je úloha UI vrstvy, nie agentského protokolu).
  • Potrebuješ veľmi nízku latenciu (< 100 ms) — HTTP overhead A2A k tomu nie je optimalizovaný.
  • Celý systém beží v jednom procese/frameworku a nepotrebuješ cross-system komunikáciu.

10. 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
Spec repozitár github.com/google-a2a/a2a Otvorený, príspevky vítané

Zhrnutie

  • A2A je otvorený protokol, ktorý štandardizuje komunikáciu medzi AI agentmi cez správy, úlohy a artefakty — iniciovaný Googlom s podporou stoviek 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ú do jedného stacku.

  • Najväčší prínos je interoperabilita — agenti z rôznych frameworkov a organizácií si vedia delegovať prácu bez custom integrácií. Namiesto N² väzieb stačí jeden protokol.

  • 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í.

  • V roku 2026 sa A2A etabloval ako dominantný štandard pre enterprise multi-agent orchestráciu a jeho adopcia naďalej rastie naprieč cloudovými platformami aj open-source frameworkmi.