MCP: единый протокол доступа языковых моделей к внешним системамЯзыковая модель сама по себе способна лишь генерировать текст, а практическую ценность она приобретает тогда, когда получает доступ к базам данных, файловым хранилищам, корпоративным сервисам и внутренним программным интерфейсам. До конца 2024 года каждое такое подключение разрабатывалось индивидуально, под конкретную пару «приложение — источник».
Model Context Protocol устранил эту комбинаторику. Приложение однократно реализует клиентскую часть протокола, источник данных однократно оборачивается серверной, после чего любое приложение соединяется с любым источником без отдельной обвязки.
В протоколе выделены три роли:🟣
Хост, то есть приложение, в котором работает модель: чат-клиент, среда разработки, агентная система.
🟣
Клиент, компонент внутри хоста, удерживающий соединение с одним конкретным сервером.
🟣
Сервер, обертка над внешней системой, будь то хранилище, репозиторий или сторонний сервис.
Обмен сообщениями построен на JSON-RPC. Локальные серверы взаимодействуют с хостом через стандартные потоки ввода и вывода, удаленные работают поверх HTTP. Соединение начинается с рукопожатия, в ходе которого стороны согласуют версию протокола и перечень поддерживаемых возможностей.
Что именно предоставляет серверСпецификация различает
три типа примитивов, и различие проходит по тому, кто инициирует обращение:
🟣
Инструменты. Исполняемые действия: выполнить запрос, создать задачу, отправить сообщение. Решение о вызове принимает модель.
🟣
Ресурсы. Данные, пригодные для чтения: файлы, записи, содержимое страниц. Обращение инициирует приложение.
🟣
Промпты. Заготовленные шаблоны сценариев, которые запускает пользователь.
Разграничение имеет прикладной смысл: от того, кто инициирует обращение, зависит, какие проверки и права доступа применяются на каждом из каналов.
Статус стандартаСпецификация опубликована Anthropic в ноябре 2024 года в открытом виде. В течение 2025 года протокол поддержали остальные крупные разработчики, включая OpenAI, Google и Microsoft, а в декабре 2025 года проект был передан в Agentic AI Foundation под управлением Linux Foundation.
Что учитывать при внедрении:🟣Подключение модели к рабочим системам
расширяет поверхность атаки. Описания инструментов и результаты их вызова попадают в контекст модели наравне с пользовательским запросом, поэтому содержимое внешнего источника способно повлиять на поведение системы.
🟣
Отсюда набор практических требований: подтверждение человеком всех необратимых операций, выдача серверу минимально необходимых прав, контроль происхождения сервера перед подключением, отдельная схема авторизации для удаленных соединений.
🟣Протокол не повышает качество самой модели. Он стандартизирует канал, по которому модель получает данные и совершает действия, и делает эту часть системы воспроизводимой, переносимой и поддающейся аудиту.
Подробнее по теме:1️⃣
Исходный анонс протокола, Anthropic, ноябрь 2024. Публикация, с которой все началось: постановка задачи и первое описание архитектуры.
2️⃣
Официальная спецификация и документация. Актуальная версия протокола, описание примитивов, транспортов и схемы авторизации.
3️⃣
Hou X. и др. Model Context Protocol (MCP): Landscape, Security Threats, and Future Research Directions, 2025. Первая систематическая работа по протоколу: архитектура, жизненный цикл сервера, таксономия угроз по фазам.
4️⃣
Hasan M. M. и др. Model Context Protocol (MCP) at First Glance, 2025: эмпирический анализ 1899 открытых MCP-серверов: качество кода, уязвимости, сопровождаемость.
5️⃣
Li X., Gao X. A First Look at the Security Issues in the Model Context Protocol Ecosystem, 2025. Исследование рисков на уровне реестров и хостов: как недостаточная проверка позволяет вредоносным серверам попадать в клиентские приложения.