Перейти к содержимому
Guide

MCP против A2A: выбор правильного протокола агента ИИ

| 9 min read

MCP соединяет модели искусственного интеллекта с инструментами. A2A соединяет агентов ИИ друг с другом. Сравните архитектуру, аутентификацию, формат сообщений и внедрение, чтобы выбрать правильный протокол.

Robot representing AI agent communication
Photo by Alex Knight on Unsplash

Вашему ИИ-агенту необходимо вызвать API поиска DNS. Также необходимо передать исследовательскую задачу отдельному агенту на другом сервере. Это две разные проблемы, и для их решения в отрасли созданы два разных протокола: МКП (Протокол контекста модели) от Anthropic и А2А (Агент-агенту) от Google.

Разработчики продолжают задаваться вопросом, какой из них выбрать. Ответ: они решают разные задачи. MCP соединяет модель с инструментами. A2A соединяет агентов с агентами. В этом руководстве подробно описаны архитектура, формат сообщений, модель аутентификации и внедрение каждого протокола, чтобы вы могли сделать правильный выбор для своей системы.

МКП за 60 секунд

MCP — это открытый протокол, который предоставляет моделям ИИ доступ к внешним инструментам и данным. Думайте об этом как о порте USB-C для искусственного интеллекта: один стандартный интерфейс, множество инструментов. Модель отправляет запрос JSON-RPC, описывающий, какой инструмент вызывать и с какими параметрами. Сервер MCP запускает инструмент и возвращает структурированные данные.

Вот как выглядит вызов инструмента MCP в сети:

// MCP tool call: model asks the server to execute a tool
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "lookup_dns",
    "arguments": {
      "domain": "stripe.com",
      "type": "MX"
    }
  },
  "id": 1
}

// MCP tool result: server returns structured data
{
  "jsonrpc": "2.0",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"domain\":\"stripe.com\",\"type\":\"MX\",\"records\":[{\"priority\":1,\"value\":\"aspmx.l.google.com\",\"ttl\":300}]}"
      }
    ]
  },
  "id": 1
}

Модель никогда не касается сети напрямую. Он описывает намерение («поиск записей MX для Stripe.com»), а выполнением занимается сервер MCP. Это сохраняет модель в «песочнице», предоставляя ей доступ к реальным данным.

Ботой запускает сервер MCP по адресу api.botoi.com/mcp с 49 инструментами разработчика. Подключите его к Claude, Cursor или VS Code в одну строку:

# Connect botoi's 49 tools via MCP in one command
claude mcp add botoi --transport streamable-http https://api.botoi.com/mcp

# Now your agent can call tools like:
# lookup_dns, lookup_whois, ssl_check, jwt_sign,
# pii_detect, email_validate, hash, uuid_generate,
# json_format, base64_encode, and 39 more

А2А за 60 секунд

A2A — это открытый протокол для связи между агентами. Там, где MCP соединяет модель с инструментами, A2A соединяет агента с другими агентами. Каждый агент публикует «Карточку агента» по известному URL-адресу, описывающую его навыки, возможности и требования к аутентификации. Другие агенты обнаруживают эту карту и отправляют задания.

Вот карта агента:

// A2A Agent Card: published at /.well-known/agent.json
{
  "name": "invoice-processor",
  "description": "Extracts line items from PDF invoices and returns structured data",
  "url": "https://agents.example.com/invoice",
  "version": "1.0.0",
  "capabilities": {
    "streaming": true,
    "pushNotifications": false
  },
  "skills": [
    {
      "id": "extract-invoice",
      "name": "Extract Invoice Data",
      "description": "Parses a PDF invoice and returns line items as JSON"
    }
  ],
  "authentication": {
    "schemes": ["bearer"]
  }
}

А вот как один агент отправляет задачу другому:

// A2A task/send: one agent asks another to do work
{
  "jsonrpc": "2.0",
  "method": "tasks/send",
  "params": {
    "id": "task-abc-123",
    "message": {
      "role": "user",
      "parts": [
        {
          "type": "text",
          "text": "Extract line items from this invoice PDF"
        },
        {
          "type": "file",
          "mimeType": "application/pdf",
          "uri": "https://storage.example.com/invoices/2026-march.pdf"
        }
      ]
    }
  },
  "id": 2
}

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

Сравнительная таблица

Измерение MCP (протокол контекста модели) A2A (агент-агенту)
Создано Антропный (ноябрь 2024 г.) Google (апрель 2025 г.)
Основная цель Подключите модели ИИ к инструментам и данным Подключите ИИ-агентов друг к другу
Схема общения Модель вызывает инструмент, получает результат Агент делегирует задачу агенту
Формат провода JSON-RPC 2.0 JSON-RPC 2.0
Транспорт stdio (локальный), потоковый HTTP (удаленный) HTTPS
Открытие Сервер предоставляет список инструментов через tools/list Агент публикует карточку агента на /.well-known/agent.json
Модель аутентификации Определяется сервером (ключ API, OAuth, нет) Карта агента объявляет схемы (носитель, OAuth 2.0, ключ API)
Потоковое вещание Отправленные сервером события для результатов инструмента Отправленные сервером события для обновлений задач
Государственность Без сохранения состояния или на основе сеанса Жизненный цикл задачи (отправлено, работает, завершено, не выполнено)
Мультимодальный Текстовые результаты инструмента Текст, файлы, изображения, структурированные данные в частях сообщения
Объем исполнения Единый вызов инструмента с определенными входами/выходами Открытая задача; агент решает, как его завершить

Архитектура: как они сочетаются друг с другом

MCP работает на уровне инструмента. A2A работает на уровне оркестровки. В многоагентной системе оркестратор использует A2A для делегирования задач специализированным агентам. Каждый специалист использует MCP для доступа к своим инструментам.

Orchestrator Agent (A2A client)
  |
  |-- A2A task/send --> Research Agent
  |                        |-- MCP tools/call --> lookup_dns
  |                        |-- MCP tools/call --> lookup_whois
  |                        |-- MCP tools/call --> ssl_check
  |
  |-- A2A task/send --> Compliance Agent
  |                        |-- MCP tools/call --> pii_detect
  |                        |-- MCP tools/call --> email_validate
  |
  |-- A2A task/send --> Report Agent
                           |-- MCP tools/call --> markdown_to_html
                           |-- MCP tools/call --> pdf_from_html

Агент оркестратора получает запрос типа «проверить состояние безопасности example.com». Он разбивает это на подзадачи и делегирует их через A2A: один агент исследует DNS и SSL, другой проверяет раскрытие PII, третий составляет отчет. Каждый агент использует MCP для вызова конкретных инструментов, которые ему нужны.

MCP и A2A не конкурируют. MCP отвечает: «Как мой агент использует инструменты?» A2A отвечает: «Как мои агенты разговаривают друг с другом?» Большинству производственных мультиагентных систем требуется и то, и другое.

Когда использовать MCP

  • Ваша модель ИИ должна вызывать API, запрашивать базы данных или читать файлы.
  • Вам нужен один агент с доступом ко многим инструментам (например, к 49 инструментам на сервере Botoi MCP).
  • Вам нужны детерминированные вызовы инструментов с определенными схемами ввода/вывода.
  • Вы строите единую границу доверия; модель и инструменты принадлежат одной системе
  • Вам нужна широкая поддержка клиентов: Claude Desktop, Claude Code, Cursor, VS Code, Windsurf и ChatGPT — все они поддерживают MCP.

Когда использовать A2A

  • У вас есть несколько агентов, которым необходимо делегировать работу друг другу.
  • Агенты выходят за рамки организации (ваш агент общается с агентом поставщика)
  • Задачи открытые; вызывающий агент не предписывает, как выполнять работу
  • Вам нужен жизненный цикл задачи с отслеживанием статуса (отправлено, работает, завершено, не выполнено).
  • Агенты обмениваются богатым контентом: файлами, изображениями и структурированными данными, а не параметрами инструментов.

Модели аутентификации и доверия

MCP имеет простую историю авторизации. Сервер MCP самостоятельно определяет аутентификацию. Некоторым серверам не требуется аутентификация (доступ к локальной файловой системе). Другим требуется ключ API или токен OAuth. Клиент передает учетные данные в заголовках. Нет согласования аутентификации на уровне протокола.

A2A встраивает аутентификацию в уровень обнаружения. Каждая карта агента объявляет поддерживаемые схемы аутентификации. Вызывающий агент считывает карту, выбирает схему и проходит аутентификацию перед отправкой задач. Это хорошо работает в межорганизационных сценариях, когда агентам необходимо согласовывать доверие во время выполнения.

Для сервера Botoi MCP анонимный доступ дает 5 запросов в минуту и ​​100 в день. Добавьте ключ API в Authorization заголовок для более высоких лимитов:

{
  "mcpServers": {
    "botoi": {
      "type": "streamable-http",
      "url": "https://api.botoi.com/mcp"
    }
  }
}

Принятие в 2026 году

MCP имеет преимущество. Anthropic выпустила MCP в ноябре 2024 года, а к началу 2026 года его будут поддерживать все крупные помощники по программированию искусственного интеллекта. Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf и ChatGPT — все выступают в качестве клиентов MCP. В экосистеме имеются тысячи серверов MCP, охватывающие базы данных, API, файловые системы, браузеры и инструменты разработчика.

А2А новее. Google выпустила эту спецификацию в апреле 2025 года. Ее внедрение растет в корпоративных средах, где важна многоагентная оркестровка: автоматизация цепочки поставок, конвейеры обработки документов и системы обслуживания клиентов со специализированными агентами. Механизм обнаружения карточек агентов упрощает создание торговых площадок и каталогов агентов.

Если вы сегодня создаете систему вызова инструментов с одним агентом, у MCP есть экосистема. Если вы создаете многоагентную оркестровку, A2A обеспечивает необходимый вам уровень координации.

Конкретный пример MCP: 49 инструментов Ботоя

Сервер MCP Ботоя по адресу api.botoi.com/mcp показывает, как выглядит MCP в производстве. Он предоставляет 49 тщательно подобранных инструментов разработчика в пяти категориях:

Категория Считать Примеры инструментов
Искать 12 dns_lookup, whois_lookup, ssl_check, email_validate, tech_detect
Текст и данные 10 json_format, base64_encode, csv_to_json, markdown_to_html
Разработчик 12 jwt_sign, uuid_generate, хеш, cron_describe, regex_test
Безопасность 5 aes_encrypt, pii_detect, totp_generate,credit_card_validate
Трансформировать 5 minify_js, sql_format, code_format, json_to_typescript

Сервер использует потоковый HTTP-транспорт, работает на Cloudflare Workers на периферии и не требует никакой настройки, кроме однострочной настройки. Каждый инструмент имеет типизированную схему ввода и возвращает структурированный JSON. Полный манифест инструмента находится по адресу api.botoi.com/v1/mcp/tools.json.

По своей сути это MCP: один сервер, множество инструментов, структурированный ввод-вывод и стандартный протокол, к которому может подключиться любой совместимый клиент.

Структура принятия решений

Задайте эти три вопроса:

  1. Нужно ли вашей модели ИИ вызывать внешние инструменты? Используйте МКП. Подключитесь к серверу MCP (или создайте свой собственный), и ваша модель получит структурированный доступ к инструментам.
  2. У вас есть несколько агентов, которым необходимо сотрудничать? Используйте А2А. Публикуйте карточки агентов, отправляйте задачи и отслеживайте их жизненный цикл.
  3. У вас есть оба? Используйте оба. A2A на уровне оркестровки, MCP на уровне инструментов. Они действуют на разных уровнях и не конфликтуют.

Выбор не MCP или A2A. Это MCP, A2A или MCP + A2A, в зависимости от сложности вашей системы. Если вам нужен доступ к инструментам, начните с MCP. Добавьте A2A, если вам нужна координация агентов.

Начните работу с MCP

Подключите своего AI-помощника к 49 инструментам разработчика через сервер Botoi MCP. Проверьте Документация по настройке MCP для конфигураций Claude Desktop, Claude Code, Cursor, VS Code и Windsurf. Просмотрите Документация по API для получения полного списка из более чем 150 конечных точек за сервером MCP.

FAQ

В чем разница между MCP и A2A?
MCP (Model Context Protocol) соединяет модель искусственного интеллекта с внешними инструментами и источниками данных. A2A (агент-агент) соединяет независимых агентов ИИ друг с другом, чтобы они могли делегировать задачи, обмениваться результатами и сотрудничать. MCP решает проблему доступа к инструментам. A2A решает координацию агентов. Они нацелены на разные уровни системы искусственного интеллекта и могут работать вместе.
Могут ли MCP и A2A работать вместе в одной системе?
Да. Распространенный шаблон использует A2A для связи между агентами на уровне оркестрации, в то время как каждый агент использует MCP для доступа к своим собственным инструментам и источникам данных. Агент оркестратора делегирует задачи через A2A. Специализированные агенты выполняют эти задачи, вызывая инструменты MCP. Эти два протокола работают на разных уровнях и не конфликтуют.
Какой протокол мне следует выбрать для моего приложения ИИ?
Если вашей модели ИИ необходимо вызывать внешние API, запрашивать базы данных или читать файлы, используйте MCP. Если у вас есть несколько агентов ИИ, которым необходимо делегировать работу друг другу за пределами команды или организации, используйте A2A. Большинство производственных систем, которые выходят за рамки одного агента, в конечном итоге используют оба.
MCP предназначен только для моделей Anthropic, а A2A — только для моделей Google?
Нет. Оба протокола являются открытыми. MCP работает с Claude, GPT, Gemini, Llama и любой моделью, поддерживающей вызов инструментов. A2A работает с любой средой выполнения агента независимо от базовой модели. Anthropic создал MCP, а Google создал A2A, но ни один из протоколов не привязан к своему создателю.
Какой транспорт использует каждый протокол?
MCP поддерживает stdio для локальных серверов инструментов и Streamable HTTP (JSON-RPC 2.0) для удаленных серверов. A2A использует HTTPS с JSON-RPC 2.0 для всех коммуникаций. Оба протокола используют JSON для форматирования сообщений. MCP также поддерживает события, отправленные сервером, для потоковой передачи результатов инструмента.

Начните разработку с botoi

150+ API-эндпоинтов для поиска, обработки текста, генерации изображений и утилит для разработчиков. Бесплатный тариф, без банковской карты.