Лев Корольков
Руководитель IT-департамента EFSOL Oblako
Время чтения: 13 мин

MCP (Model Context Protocol)

Протокол подключения ИИ

MCP, или Model Context Protocol, — открытый стандарт для подключения приложений искусственного интеллекта к внешним системам, данным и инструментам. Через MCP ИИ-приложение может получать документы из файлового хранилища, обращаться к базе данных, выполнять поиск, вызывать API или запускать другие доступные функции через стандартизированный интерфейс.

Без такого стандарта разработчику приходится отдельно реализовывать интеграцию языковой модели с каждым сервисом. MCP задает общий способ описать доступные возможности и взаимодействие между ИИ-приложением и внешней системой.

MCP не является языковой моделью и самостоятельно не делает ИИ умнее. Он определяет протокол обмена контекстом и действиями, а решение о том, как использовать полученную информацию, остается за ИИ-приложением.

Простыми словами, MCP — это универсальный интерфейс, через который ИИ может узнавать, какие данные и функции ему доступны, и использовать их в приложении.

Зачем нужен MCP

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

Для каждого такого источника можно написать отдельную интеграцию. Но при росте количества приложений и сервисов число интеграционных связей быстро увеличивается.

MCP стандартизирует один из слоев такого взаимодействия. ИИ-приложение может подключаться к совместимым MCP-серверам и узнавать, какие ресурсы, инструменты и другие возможности они предоставляют.

Как работает MCP простыми словами

Представим ИИ-помощника, которому пользователь пишет: покажи мои открытые заявки технической поддержки.

Языковая модель сама по себе не знает содержимое внутренней системы компании. Однако к ИИ-приложению подключен MCP-сервер службы поддержки.

Сервер сообщает клиенту, какие возможности доступны. Например, он может предоставить инструмент поиска заявок. ИИ-приложение вызывает этот инструмент с нужными параметрами, получает список заявок и передает результат модели для формирования ответа. Возможность обнаруживать и вызывать инструменты является частью протокола MCP.

  1. Пользователь задает вопрос ИИ.
  2. Приложение определяет, что необходимы внешние данные.
  3. MCP-клиент обращается к подключенному MCP-серверу.
  4. Сервер предоставляет доступные возможности.
  5. Приложение вызывает нужный инструмент или получает ресурс.
  6. Результат передается в контекст модели.
  7. Модель формирует итоговый ответ.

Архитектура MCP

В архитектуре MCP выделяются три ключевых участника: Host, Client и Server. MCP использует клиент-серверный подход. ИИ-приложение выступает Host и создает MCP-клиенты для взаимодействия с подключенными серверами.

КомпонентЧто делает
MCP HostИИ-приложение, управляющее подключениями и использованием возможностей MCP
MCP ClientКомпонент внутри Host, взаимодействующий с конкретным MCP-сервером
MCP ServerПрограмма, предоставляющая внешние данные и возможности через MCP

Один Host может работать сразу с несколькими MCP-серверами. Например, один сервер предоставляет доступ к CRM, второй — к файловому хранилищу, третий — к корпоративной базе знаний. Для каждого подключения Host может использовать отдельный MCP-клиент.

Что такое MCP Server

MCP Server — программа, которая предоставляет ИИ-приложению определенные возможности через стандартизированный протокол.

Например, сервер может предоставить функцию получения данных о клиенте, чтения документа или выполнения запроса к внешнему API.

MCP-сервер может работать локально на компьютере пользователя или удаленно на серверной инфраструктуре. В официальной архитектуре для локальных процессов используется в том числе STDIO, а для удаленного взаимодействия предусмотрен Streamable HTTP.

Что такое MCP Client

MCP Client — компонент ИИ-приложения, который взаимодействует с MCP-сервером.

Клиент получает информацию о доступных возможностях сервера, отправляет запросы и получает результаты.

Например, если сервер предоставляет десять инструментов, клиент может запросить их список, получить описания и схемы входных параметров, а затем вызвать подходящий инструмент.

Что такое MCP Host

Host — само приложение, внутри которого используется искусственный интеллект и создаются MCP-клиенты.

Это может быть ИИ-ассистент, среда разработки, корпоративный чат или агентная система.

Host решает, какие серверы подключить, как передавать информацию модели и какие действия разрешены пользователю. MCP определяет обмен данными, но не диктует внутреннюю архитектуру самого ИИ-приложения.

Основные возможности MCP Server

В MCP выделяются три основные серверные примитивы: Tools, Resources и Prompts. Они позволяют серверу предоставлять действия, данные и шаблоны взаимодействия.

ПримитивНазначениеПример
ToolsВыполнение действийПолучить заказ или создать заявку
ResourcesПредоставление данных и контекстаФайл, запись базы или ответ API
PromptsПовторно используемые шаблоны взаимодействияШаблон анализа документа

Tools в MCP

Tools — исполняемые функции, которые MCP-сервер предоставляет ИИ-приложению. Они могут выполнять вычисления, обращаться к базе данных, вызывать API или работать с файлами.

Каждый инструмент имеет имя, описание и схему входных параметров. Клиент может получить список инструментов, а затем вызвать выбранный через стандартные методы протокола.

Например, CRM-сервер может предоставить инструменты get_client, get_deals и create_task. Модель получает их описания и может выбрать нужный инструмент исходя из пользовательского запроса.

Resources в MCP

Resources предназначены для предоставления контекстных данных. Это могут быть содержимое файлов, записи базы данных, схемы, результаты API и другая информация, которую приложение способно передать модели.

Отличие Resources от Tools заключается в основной роли: Resource предоставляет данные, а Tool выполняет действие или вычисление.

Например, схема базы данных может быть Resource, а функция выполнения разрешенного запроса к этой базе — Tool.

Prompts в MCP

Prompts — повторно используемые шаблоны, которые помогают организовывать взаимодействие с языковой моделью. MCP Server может публиковать такие шаблоны вместе с другими возможностями.

Например, сервер для работы с кодом может предоставить шаблон анализа ошибки, а сервер корпоративных документов — шаблон создания краткого содержания.

Prompt в MCP не следует путать со всем пользовательским запросом. Это отдельная стандартизированная возможность сервера.

Как клиент узнает о возможностях сервера

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

Это важная особенность протокола. ИИ-приложению не обязательно жестко хранить описание каждой функции внутри собственного кода.

Сервер может сообщить, какие возможности предоставляет сейчас, а клиент использует эту информацию при работе.

MCP и JSON-RPC

На уровне обмена сообщениями MCP использует JSON-RPC 2.0. Протокол определяет структуру запросов, ответов и уведомлений между клиентом и сервером.

Разработчику при использовании официального SDK обычно не требуется вручную создавать все низкоуровневые сообщения. SDK предоставляет более удобные программные интерфейсы.

На август 2026 года официальные SDK MCP доступны для нескольких языков, включая TypeScript, Python, C#, Go, Java, Rust, Ruby, Swift и PHP, с разными уровнями поддержки.

Локальные и удаленные MCP-серверы

MCP Server не обязательно находится в интернете. Он может запускаться непосредственно на компьютере пользователя.

Например, локальный сервер может предоставлять доступ к разрешенной директории с файлами.

Для удаленного сервера взаимодействие происходит по сети. Актуальная архитектура MCP описывает STDIO как транспорт для прямого взаимодействия локальных процессов и Streamable HTTP для удаленных серверов.

ТипПример
Локальный MCP ServerРабота с файлами на компьютере
Удаленный MCP ServerДоступ к облачной CRM или SaaS

MCP и API

MCP не заменяет API. Эти технологии решают разные уровни задачи.

API определяет, как программное приложение взаимодействует с конкретным сервисом. MCP может использовать этот API внутри MCP-сервера и предоставить его возможности ИИ-приложению в стандартизированном виде.

Например, CRM уже имеет REST API. Разработчик создает MCP Server, который обращается к этому API и предоставляет ИИ несколько ограниченных инструментов: найти клиента, получить сделки и создать задачу.

Таким образом, MCP часто выступает промежуточным адаптером между ИИ-приложением и существующими API.

MCP и Function Calling

Function Calling позволяет языковой модели сформировать структурированный запрос к функции. MCP решает более широкую интеграционную задачу: определяет стандартизированный способ, через который приложение может обнаруживать и использовать возможности внешнего MCP-сервера.

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

Поэтому Function Calling и MCP могут использоваться совместно и не являются взаимоисключающими технологиями.

MCP и ИИ-агенты

MCP особенно полезен для ИИ-агентов, потому что агенту часто необходимо взаимодействовать с внешним миром.

Например, агент получает задачу проверить график сотрудника и запланировать встречу. Для выполнения нужны актуальные данные календаря и возможность создать событие.

Через MCP соответствующий сервер может предоставить инструменты чтения календаря и создания встречи. Агент выбирает необходимые действия, а Host контролирует их фактическое выполнение.

MCP и RAG

MCP и RAG также решают разные задачи.

RAG — архитектура получения внешних знаний перед генерацией ответа. MCP — протокол интеграции ИИ-приложения с внешними системами.

При этом MCP может использоваться внутри RAG. Например, MCP Server предоставляет инструмент поиска по корпоративной базе знаний или Resources с необходимыми документами.

ТехнологияОсновная задача
MCPСтандартизировать подключение внешних возможностей
RAGНайти знания и добавить их в контекст LLM
Function CallingПозволить модели сформировать вызов функции
APIПредоставить программный интерфейс конкретного сервиса

MCP и контекстное окно

Название Model Context Protocol не означает, что все данные MCP автоматически помещаются в контекстное окно модели.

Сервер может предоставлять большое количество ресурсов и инструментов, а Host решает, какую информацию действительно передать LLM.

Это важно для эффективности. Если без разбора добавлять в промпт все доступные данные, растет количество токенов и информационный шум.

Сам MCP определяет протокол обмена и не предписывает приложению конкретную стратегию управления контекстом.

MCP и LangChain

LangChain является фреймворком для разработки LLM-приложений, а MCP — протоколом взаимодействия с внешними системами.

Фреймворк или собственное приложение может реализовать MCP Client и использовать возможности MCP-серверов в агентном workflow.

Поэтому LangChain и MCP находятся на разных уровнях архитектуры и могут использоваться совместно.

MCP и безопасность

Подключение ИИ к внешним системам создает дополнительные риски. MCP-сервер может предоставлять функции, которые читают конфиденциальные данные или изменяют состояние бизнес-систем.

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

Безопасность должна обеспечиваться не только системным промптом. Даже если модели написано не удалять данные, сервер должен программно запрещать неразрешенные операции.

Принцип минимальных полномочий

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

Если ИИ должен только читать список счетов, ему не требуется инструмент удаления счета.

Разделение инструментов чтения и изменения уменьшает потенциальные последствия ошибки модели или вредоносной инструкции.

Для критичных операций также целесообразно требовать подтверждение пользователя.

Prompt Injection и MCP

ИИ-приложение может получать данные из внешних источников, в которых содержится текст, специально созданный для изменения поведения модели.

Например, вредоносная инструкция может оказаться внутри документа, прочитанного агентом.

Если агент одновременно имеет мощные инструменты, Prompt Injection способен стать значительно опаснее.

Поэтому права доступа, допустимые параметры и бизнес-правила должны проверяться программным кодом независимо от решения LLM.

Нужно ли подтверждать вызовы Tools

Подход зависит от уровня риска. Получение прогноза погоды и перевод денег имеют совершенно разную цену ошибки.

Для операций изменения данных полезно использовать Human in the Loop: модель предлагает действие, но выполнение происходит только после подтверждения пользователя.

В официальном MCP предусмотрен механизм Elicitation, позволяющий серверу запрашивать дополнительную информацию или подтверждение через клиент.

Актуальная версия MCP

На момент подготовки материала актуальная опубликованная спецификация MCP имеет версию 2026-07-28. В ней ядро протокола стало stateless: каждый запрос содержит необходимую информацию о версии и релевантных возможностях, а сервер может обрабатывать запрос независимо. Версия также включает формальный механизм расширений и изменения в авторизации и взаимодействии между клиентом и сервером.

Так как MCP активно развивается, при разработке интеграции необходимо ориентироваться на документацию конкретной версии используемого SDK и протокола.

Stateless MCP

Stateless означает, что серверному ядру не требуется полагаться на постоянную сессию для обработки каждого обычного запроса. В версии 2026-07-28 запрос содержит метаданные о версии протокола и необходимых возможностях.

Такой подход упрощает масштабирование удаленных серверов, поскольку запросы проще распределять между экземплярами сервиса. Изменение на stateless core было одной из ключевых особенностей спецификации 2026-07-28.

Расширения MCP

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

Например, для длительных операций может использоваться расширение Tasks, позволяющее работать с задачами, выполнение которых не завершается мгновенно.

Преимущества MCP для разработчика

  • единый подход к подключению внешних систем;
  • обнаружение доступных инструментов и ресурсов;
  • возможность менять Host или Server независимо;
  • сокращение количества уникальных интеграций;
  • подключение локальных и удаленных систем;
  • удобная архитектура для ИИ-агентов;
  • повторное использование MCP-сервера несколькими совместимыми приложениями.

Официальная документация отдельно отмечает снижение сложности интеграции как одно из преимуществ стандартизированного протокола.

Преимущества MCP для бизнеса

Для бизнеса MCP интересен прежде всего как способ стандартизировать доступ ИИ к корпоративным возможностям.

Например, компания может создать MCP Server для своей внутренней CRM. После этого совместимые ИИ-приложения смогут использовать разрешенные функции через общий интерфейс вместо разработки отдельной интеграции для каждого ассистента.

Это не отменяет необходимость разработки бизнес-логики, но уменьшает зависимость между конкретной языковой моделью и внутренней системой.

Ограничения MCP

MCP не решает автоматически все задачи интеграции искусственного интеллекта.

Он не гарантирует правильность решения LLM, не устраняет галлюцинации, не исправляет плохой API и не определяет бизнес-права пользователя.

Разработчику по-прежнему необходимо реализовать серверную логику, авторизацию, обработку ошибок, валидацию параметров и мониторинг.

Также внедрение MCP может быть избыточным для приложения, которое использует один простой API и не нуждается в совместимости с другими ИИ-клиентами.

Основные риски MCP

РискЧто может произойтиКак снизить
Слишком широкие праваИИ получает доступ к опасным действиямМинимальные полномочия
Prompt InjectionВнешний контент пытается изменить поведение агентаПрограммные ограничения
Ошибочный Tool CallМодель выбирает неправильное действиеВалидация и подтверждение
Утечка данныхИИ получает лишнюю информациюКонтроль доступа на сервере
Ошибка внешнего APITool возвращает некорректный результатОбработка ошибок и проверки
Несовместимость версийКлиент и сервер используют разные возможностиКонтроль версии протокола

Типичные ошибки при внедрении MCP

  1. Считать MCP заменой API.
  2. Предоставлять модели все функции внутренней системы.
  3. Не проверять права пользователя внутри MCP Server.
  4. Полагаться только на промпт для обеспечения безопасности.
  5. Не разделять операции чтения и изменения данных.
  6. Автоматически подтверждать критичные действия агента.
  7. Передавать в модель слишком большой объем Resources.
  8. Не обрабатывать ошибки внешних сервисов.
  9. Не фиксировать совместимую версию протокола и SDK.
  10. Создавать MCP Server для задачи, где простой прямой API остается более подходящим решением.

Как создать MCP Server

Шаг 1. Определить бизнес-возможности

Нужно решить, какие данные и действия действительно требуется предоставить ИИ.

Шаг 2. Разделить данные и действия

Информацию можно представить через Resources, а операции — через Tools.

Шаг 3. Описать интерфейсы

Tool должен иметь понятное название, описание и схему входных данных. Структурированное описание помогает клиенту корректно использовать функцию.

Шаг 4. Добавить права доступа

MCP Server обязан проверять, имеет ли пользователь право получить данные или выполнить операцию.

Шаг 5. Выбрать транспорт

Для локального сценария может использоваться STDIO, а для удаленного сервиса — Streamable HTTP.

Шаг 6. Протестировать инструменты

Необходимо проверить корректные и ошибочные параметры, отсутствие данных и недоступность внешних систем.

Шаг 7. Проверить сценарии безопасности

Особое внимание уделяется действиям, способным изменять данные или обращаться к конфиденциальной информации.

Практический пример MCP

Компания хочет подключить корпоративного ИИ-помощника к системе учета клиентов.

Вместо предоставления модели прямого доступа к базе создается MCP Server.

Сервер предоставляет три инструмента: найти клиента, получить список открытых сделок и создать задачу менеджеру. Для каждого инструмента задана строгая схема параметров.

Когда сотрудник спрашивает какие сделки сейчас открыты у клиента Альфа, ИИ-приложение использует Tool поиска клиента, получает его идентификатор, после чего вызывает Tool получения сделок.

Если пользователь просит создать задачу, приложение показывает предлагаемые параметры перед выполнением операции.

MCP стандартизирует взаимодействие между ассистентом и сервером, а сама CRM остается защищена бизнес-правилами и механизмами авторизации.

Когда MCP особенно полезен

MCP становится особенно полезным, когда ИИ-приложению необходимо работать с несколькими внешними сервисами или когда одну интеграцию планируется использовать с разными ИИ-клиентами.

Он хорошо подходит для корпоративных ассистентов, сред разработки, ИИ-агентов и систем, которым необходим унифицированный доступ к инструментам и контексту.

Если же приложение делает один фиксированный запрос к одному API, дополнительный протокольный слой может не дать заметного преимущества.

MCP и будущее ИИ-интеграций

Ценность MCP заключается в отделении возможностей внешней системы от конкретного интерфейса одного ИИ-продукта.

Разработчик MCP Server описывает, какие действия и данные предоставляет система, а совместимый Host способен подключить их через стандартизированный протокол.

Это создает основу для экосистемы взаимозаменяемых ИИ-клиентов и подключаемых сервисов, хотя реальная совместимость всегда зависит от поддерживаемой версии протокола и конкретных возможностей клиента.

Связанные термины

ТерминСвязь с MCP
Большая языковая модельИспользует данные и инструменты, подключенные приложением
ИИ-агентМожет выполнять действия через MCP Tools
RAGМожет получать внешние знания через подключенные источники
Function CallingИспользуется для структурированного вызова функций моделью
APIMCP Server может использовать API внешней системы
Контекстное окноВ него может передаваться информация, полученная через MCP
Prompt InjectionОдин из рисков агентных интеграций
LangChainМожет использоваться при создании приложений, работающих с инструментами и MCP
RerankingМожет применяться перед передачей найденного контекста LLM
LLMOpsОрганизует эксплуатацию приложений с языковыми моделями и интеграциями

Краткий итог

MCP, или Model Context Protocol, — открытый стандарт, который определяет способ подключения ИИ-приложений к внешним данным, инструментам и другим системам. Его архитектура включает Host, Client и Server, а MCP-серверы могут предоставлять Tools, Resources и Prompts.

MCP особенно полезен для ИИ-агентов и корпоративных ассистентов, которым требуется работать с CRM, файлами, базами данных, API и другими источниками. Вместо уникального интерфейса для каждой интеграции разработчик может предоставить возможности через стандартный протокол.

При этом MCP не заменяет безопасность, API и бизнес-логику. Сервер должен самостоятельно проверять права пользователей, валидировать параметры и ограничивать опасные действия. Чем больше реальных операций получает ИИ-агент, тем важнее программные ограничения и подтверждение критичных действий.

Частые вопросы

6 вопросов
Что такое MCP простыми словами?

MCP, или Model Context Protocol, — это стандарт, который позволяет ИИ-приложению подключаться к внешним данным и функциям через единый интерфейс. Например, через MCP ассистент может работать с файлами, базой данных, CRM или другим сервисом.

Что такое MCP Server?

MCP Server — программа, которая предоставляет ИИ-приложению определенные возможности через MCP. Это могут быть Tools для выполнения действий, Resources для получения данных и Prompts для повторно используемых шаблонов.

Чем MCP отличается от API?

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

Чем MCP отличается от Function Calling?

Function Calling позволяет языковой модели сформировать структурированный вызов функции. MCP определяет более широкий протокол взаимодействия между ИИ-приложением и внешним сервером, включая обнаружение инструментов, ресурсов и других возможностей.

Нужен ли MCP для RAG?

Нет. RAG можно построить без MCP. Однако MCP Server может предоставить поиск, документы или другие компоненты, которые используются RAG-системой для получения внешних знаний.

Безопасно ли давать ИИ доступ к MCP Tools?

Безопасность зависит от реализации. MCP Server должен проверять права доступа, ограничивать допустимые операции, валидировать параметры и требовать подтверждение для критичных действий. Нельзя полагаться только на инструкции, переданные языковой модели.

Была ли статья полезна?
Документ обновляется командой EFSOL. Свяжитесь с нами, если нашли неточность.
Нужна консультация?

Поможем спроектировать, развернуть и сопроводить облачную или гибридную инфраструктуру под задачи вашего бизнеса.

Ответим в течение часа в рабочее время
Заказать звонок

Оставьте свои данные для того, чтобы специалист с вами связался.

Заказать звонок

Оставьте свои данные для того, чтобы специалист с вами связался.