MCP против A2A: выбор правильного протокола агента ИИ
MCP соединяет модели искусственного интеллекта с инструментами. A2A соединяет агентов ИИ друг с другом. Сравните архитектуру, аутентификацию, формат сообщений и внедрение, чтобы выбрать правильный протокол.
Вашему ИИ-агенту необходимо вызвать 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: один сервер, множество инструментов, структурированный ввод-вывод и стандартный протокол, к которому может подключиться любой совместимый клиент.
Структура принятия решений
Задайте эти три вопроса:
- Нужно ли вашей модели ИИ вызывать внешние инструменты? Используйте МКП. Подключитесь к серверу MCP (или создайте свой собственный), и ваша модель получит структурированный доступ к инструментам.
- У вас есть несколько агентов, которым необходимо сотрудничать? Используйте А2А. Публикуйте карточки агентов, отправляйте задачи и отслеживайте их жизненный цикл.
- У вас есть оба? Используйте оба. 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-эндпоинтов для поиска, обработки текста, генерации изображений и утилит для разработчиков. Бесплатный тариф, без банковской карты.