Menu ☰
iris · · 3 min citire

A2A vs MCP: două protocoale, două probleme complet diferite

Deschid dimineață un ticket: echipa a înlocuit un adapter MCP cu un endpoint A2A „pentru că e mai nou". Nimic nu mai funcționează. Confuzia asta apare săptămânal.

CAI Technology · Ultima revizuire: 28.08.2026

Trimite mai departe

Clean editorial photo of two diverse professionals in a bright office having a discussion; no text, no third-party logos, anatomy looks natural.

A2A vs MCP: două protocoale, două probleme complet diferite

Deschid dimineață un ticket: echipa a înlocuit un adapter MCP cu un endpoint A2A „pentru că e mai nou”. Nimic nu mai funcționează. Confuzia asta apare săptămânal.

Model Context Protocol (MCP) și Agent-to-Agent (A2A) rezolvă probleme ortogonale. MCP conectează un agent la unelte. A2A conectează un agent la alt agent. Substituția între ele nu e o alegere de arhitectură — e o eroare de categorie.

Ce face fiecare, la nivel de wire

MCP, publicat de Anthropic în noiembrie 2024, standardizează cum un LLM cheamă capabilități locale sau remote prin JSON-RPC 2.0 peste stdio, HTTP+SSE sau streamable HTTP (spec MCP 2025-06-18). Serverul expune trei primitive: tools/list, resources/read, prompts/get. Clientul (agentul) le invocă atunci când modelul decide să le folosească.

A2A, publicat de Google în aprilie 2025 și donat Linux Foundation în iunie 2025 (anunț oficial Google), definește cum doi agenți autonomi — cu propriile lor LLM-uri, propria lor memorie, propriile lor decizii — negociază o sarcină. Fiecare agent își publică AgentCard la /.well-known/agent.json; interacțiunea trece prin tasks/send cu stări submitted → working → input-required → completed.

Diferența operațională: MCP presupune un singur creier decident. A2A presupune două sau mai multe.

# MCP server: expun o unealtă către UN agent
tools:
  - name: query_anaf_cui
    description: "Verifică valabilitatea unui CUI RO"
    inputSchema: { cui: string }

# A2A agent card: mă anunț ca peer către ALȚI agenți
name: "invoice-triage-agent"
url: "https://agents.example.ro/triage"
capabilities:
  streaming: true
  pushNotifications: true
skills:
  - id: "classify-invoice"
    inputModes: ["application/pdf"]

Când folosești care

flowchart TD A[Ai nevoie de o capabilitate nouă] --> B{Cine deține starea<br/>conversației?} B -->|Un singur LLM decide<br/>și execută| C[MCP: tool call] B -->|Două entități autonome<br/>negociază rezultatul| D[A2A: task delegation] C --> E[Server MCP stateless<br/>expune tools/resources] D --> F[Agent peer stateful<br/>are propriul context] classDef mcp fill:#dbeafe,stroke:#3b82f6 classDef a2a fill:#fef3c7,stroke:#f59e0b class C,E mcp class D,F a2a

Regula pe care o folosim în arhitecturile agentice CAI: dacă răspunsul la „cine deține starea conversației?” este un singur agent, ai nevoie de MCP. Dacă e fiecare parte separat, ai nevoie de A2A. Un agent de triaj facturi care cere unui agent contabil să valideze un TVA — A2A. Același agent care citește PDF-ul cu OCR local — MCP.

Suprafața de atac diferă la fel de radical. MCP mută încrederea la nivel de tool: prompt injection prin descrieri de tool și exfiltrare prin argumente (ENISA privind AI supply chain). A2A mută încrederea la nivel de peer: un agent malițios poate emite AgentCard-uri false și poate cere date pe care nu le-ar primi într-un canal MCP autentificat. NIST AI RMF tratează cele două ca suprafețe separate (NIST AI 600-1).

Poziția noastră

Vedem echipe care aleg A2A pentru că „sună mai enterprise” și ajung să reimplementeze MCP prost peste HTTP. Vedem echipe care înghesuie logica multi-agent într-un singur server MCP gigantic și pierd izolarea. Nu sunt înlocuitori — sunt straturi. Un sistem serios folosește A2A pentru orchestrare între agenți și MCP în interiorul fiecărui agent pentru acces la unelte. Așa construim și pipeline-urile RAG securizate: granițe de încredere separate din ziua zero.

Dacă vrei să vedem împreună unde tragi linia pe stack-ul tău, treci pe pagina iris.

Lectură suplimentară

Începem cu o conversație de 30 de minute.

Audit AI-readiness gratuit pentru companii peste 50 angajați. Răspundem în 24 de ore.