Назад в блог

A2A vs MCP: чем отличаются протоколы для AI-агентов и как их сочетать

Разбираем A2A и MCP: один — агент к инструментам, второй — агент к агенту. Таблица по 6 критериям, архитектура вместе и чеклист когда что выбирать.

Иллюстрация к материалу: A2A vs MCP: чем отличаются протоколы для AI-агентов и как их сочетать

В 2026 у команды два новых вопроса: как агент вызывает инструменты и как агенты говорят между собой. Anthropic дал первый ответ — MCP, Google — второй — A2A. Путаница начинается когда один протокол пытаются натянуть на задачу другого. Они не конкуренты, а два слоя одного стека.

Зачем два протокола

Агенту нужны два типа связей. Вертикальная — к данным и действиям: прочитать задачу в Jira, записать в БД, вызвать API. Горизонтальная — к другим агентам: делегировать подзадачу, согласовать план, собрать результаты. MCP закрывает вертикаль, A2A — горизонталь. Без первого агент слеп, без второго — одинок.

Что такое MCP

Model Context Protocol (Anthropic, 2024) — открытый стандарт для подключения агента к инструментам и контексту. Агент (MCP client) подключается к MCP-серверам, каждый из которых экспонирует:

  • tools/list / tools/call — инструменты;
  • resources — данные (файлы, записи);
  • prompts — шаблоны.

Транспорты: stdio, HTTP, SSE, Streamable HTTP. MCP решает проблему N×M интеграций: вместо кастомного коннектора на каждую пару «агент—система» — один протокол с единым аудитом. Именно здесь живет управление доступом: какие инструменты видит агент, с каким scope и чьи секреты подставляются.

Что такое A2A

Agent-to-Agent Protocol (Google, 2025, открыт в 2026) — стандарт для общения агента с агентом. Каждый агент публикует Agent Card (JSON с возможностями, endpoint, аутентификацией), задачи проходят жизненный цикл submitted → working → completed/failed, поддерживаются стриминг, артефакты и человеческий эскалационный хук.

A2A не знает что такое инструмент. Он знает что такое задача для другого агента: «спланируй маршрут», «проверь договор», «собери отчет из трех источников». Транспорт — HTTP + JSON-RPC + SSE, аутентификация — OAuth 2.1 / mTLS, discovery — по каталогу Agent Cards.

Таблица: 6 отличий

КритерийMCPA2A
НазначениеАгент → инструмент/данныеАгент → агент
Примитивtools/call, ресурсыtasks с жизненным циклом
Discoverytools/list через gatewayAgent Card каталог
СостояниеСессия + streamingЗадача + артефакты
БезопасностьTool allowlist, scope, брокер секретовАгент-идентичность, delegation chain
Типичный кейс«прочитай запись в БД»«делегируй проверку коллеге-агенту»

Запомнить просто: MCP отвечает на «чем агент делает», A2A — на «кому агент поручает».

Архитектура вместе

В проде они стоят рядом за одним шлюзом:

пользователь → агент-оркестратор
                ├─A2A→ агент-исследователь → MCP→ поиск / БД
                ├─A2A→ агент-исполнитель → MCP→ Jira / GitLab
                └─MCP→ внутренние инструменты

Паттерн 2026: оркестратор получает задачу, разбивает ее на подзадачи по A2A, каждый специализированный агент вызывает свои инструменты по MCP через единый MCP gateway. Политики, аудит и секреты — в gateway, трассировка — сквозная через trace_id от A2A-задачи до MCP-вызова. Без шлюза получают два sprawl вместо одного.

Когда что выбирать

  • Нужен доступ к данным/действиям — берите MCP. Один gateway, один allowlist.
  • Нужна делегация между командами/вендорами — добавляйте A2A. Каталог Agent Cards, задачи, эскалация к человеку.
  • Оба — когда флот разнородный: оркестратор на одной платформе, исполнители — на других. Тогда MCP внутри домена, A2A — между доменами.
  • Не заменяйте MCP на A2A для инструментов: оборачивать каждый tools/call в A2A-задачу — оверхед без аудита на уровне инструмента.

Где Codenik

Codenik сегодня — MCP gateway: filtered discovery, OAuth 2.1, Cedar-политики, брокер секретов и полный аудит каждого tools/call. Для A2A-сценариев тот же gateway дает единую точку трассировки: A2A-делегация логируется как родительская задача, а каждый MCP-вызов внутри — как дочернее событие с тем же workflow_id. Политики применяются один раз на границе инструментов, независимо от того пришел вызов от человека или от другого агента. Так два протокола получают один контроль.

Короткий вывод

MCP и A2A — не «или», а «и»: один стандартизирует как агент трогает мир, второй — как агенты договариваются между собой. Проектируйте слоями, а управляйте в одной точке — шлюзе. Тогда масштаб агентов не превращается в масштаб интеграций.

Источники и дальнейшее чтение