Model Context Protocol (MCP) — это открытый стандарт, который определяет, как ИИ-приложения, в особенности большие языковые модели, обнаруживают и обмениваются контекстной информацией с внешними инструментами, источниками данных и сервисами. Он предоставляет универсальный интерфейс, позволяющий моделям подключать актуальные данные, выполнять действия и основывать свои ответы на информации, выходящей за рамки обучающего набора. Первоначально представленный Anthropic в конце 2024 года, MCP был принят во всей экосистеме ИИ как общий способ связывать модели с системами, необходимыми им для действий.
Как работает Model Context Protocol
MCP использует клиент-серверную архитектуру. ИИ-приложение, такое как чат-ассистент, плагин IDE или автономный агент, запускает MCP-клиент, который подключается к одному или нескольким MCP-серверам. Каждый сервер оборачивает определённую возможность — например, запрос к базе данных, чтение файлов из репозитория, вызов внутреннего API или управление браузером — и описывает её в машиночитаемом формате. Когда модели нужна информация или она хочет выполнить действие, клиент передаёт структурированный запрос соответствующему серверу, сервер его выполняет, а результат возвращается модели в виде контекста, который она может обрабатывать.
Для обмена данными обычно используется JSON-RPC через транспорты, такие как стандартный ввод-вывод для локальных интеграций или HTTP с Server-Sent Events для удалённых. Поскольку каждый сервер говорит на одном протоколе, та же самая модель может подключаться ко множеству инструментов без специальных коннекторов — подобно тому, как USB стандартизировал периферийные устройства для компьютеров.
Почему это важно
До появления MCP каждая интеграция ИИ-инструмента требовала собственного кода: отдельных функций, схем аутентификации и форматов сообщений для каждого источника данных. MCP заменяет эту фрагментацию единым задокументированным контрактом. Это делает создание агентов, способных искать по корпоративным базам знаний, обновлять системы тикетов, выполнять аналитические запросы или работать с инструментами разработчика, значительно проще, поскольку один и тот же клиент работает с любым совместимым сервером.
Для разработчиков MCP означает написание одного адаптера на источник данных вместо одного на модель. Для пользователей это означает, что ИИ-ассистенты могут собирать нужные инструменты на лету с меньшим количеством связующего кода и более предсказуемым поведением. Протокол также стандартизирует описание возможностей, что улучшает проверку безопасности и упрощает аудит того, что разрешено делать агенту.
Ключевые компоненты
- Хосты — ИИ-приложения, такие как Claude Desktop, ассистенты для кодинга или фреймворки агентов, которым нужен доступ к внешнему контексту.
- Клиенты — конечные точки протокола, встроенные в хосты и поддерживающие соединения с серверами один-к-одному.
- Серверы — лёгкие программы, которые предоставляют определённые ресурсы, инструменты или промпты через MCP.
- Транспорты — базовые каналы (stdio, HTTP/SSE, а позднее — streamable HTTP), по которым передаются сообщения JSON-RPC между клиентом и сервером.
MCP лучше всего понимать как связующий слой современного стека ИИ: он сам не обучает и не запускает модель, но определяет, как эта модель взаимодействует с остальным миром. Стандартизируя это подключение, MCP позволяет разработчикам сосредоточиться на создании полезных возможностей, а моделям — на их грамотном использовании.