Model Context Protocol
Model Context Protocol (MCP) — это открытый стандартный фреймворк с открытым исходным кодом, представленный компанией Anthropic в ноябре 2024 года для стандартизации способа интеграции и обмена данными между системами искусственного интеллекта (ИИ), такими как большие языковые модели (LLM), и внешними инструментами, системами и источниками данных.[1]. MCP предоставляет универсальный интерфейс для чтения файлов, выполнения функций и обработки контекстных промптов[2] . После анонса протокол был поддержан основными поставщиками ИИ, включая OpenAI и Google DeepMind[3][4].
Developed by | Anthropic |
---|---|
Introduced | ноябрь 25, 2024 |
Website | modelcontextprotocol.io/ |
Предыстория
Протокол был анонсирован компанией Anthropic в ноябре 2024 года как открытый стандарт[5] для подключения ИИ-помощников к системам данных, таким как репозитории контента, инструменты управления бизнесом и среды разработки[6] Он призван решить проблему разрозненности информации и устаревших систем[6]. До появления MCP разработчикам часто приходилось создавать собственные коннекторы для каждого источника данных или инструмента, что приводило к тому, что Anthropic описывала как проблему интеграции данных размером «N×M»[6]. Более ранние подходы, такие как API OpenAI 2023 для «вызова функций» и фреймворк плагинов ChatGPT, решали аналогичные проблемы, но требовали коннекторов, специфичных для конкретного поставщика[7]. Авторы MCP отмечают, что протокол намеренно использует принципы организации потока сообщений Language Server Protocol (LSP) и работает при соединении через Интернет по протоколу JSON-RPC 2.0[8].
Возможности
MCP определяет стандартизированную структуру для интеграции систем ИИ с внешними источниками данных и инструментами[2]. Она включает спецификации для подготовки и преобразования данных, контекстного тэгирования метаданных и взаимодействия с ИИ на различных платформах. Протокол также поддерживает безопасные двунаправленные соединения между источниками данных и инструментами на базе ИИ[6]. MCP позволяет разработчикам предоставлять доступ к своим данным через серверы MCP или разрабатывать приложения ИИ, называемые клиентами MCP, которые подключаются к этим серверам[6]. Ключевые компоненты протокола включают формальную спецификацию протокола и SDK, поддержку локального сервера MCP в приложениях Claude Desktop и открытый репозиторий реализаций сервера MCP[6].
Применение
MCP применяется в таких областях, как разработка программного обеспечения, автоматизация бизнес-процессов и автоматизация обработки естественного языка. Одним из наиболее распространенных вариантов использования являются приложения-помощники, такие как приложение Claude Desktop, которые развертывают локальные серверы MCP для обеспечения безопасного доступа к системным инструментам и пользовательским файлам.
В корпоративных средах внутренние помощники дополняются MCP для извлечения данных из корпоративных документов, CRM-систем и внутренних баз знаний — такие компании, как Block, интегрировали MCP в свои внутренние инструменты для этой цели[6].
MCP также играет важную роль в многоинструментальных рабочих процессах агентов, позволяя агентским системам ИИ координировать несколько инструментов — например, объединяя поиск документов с API обмена сообщениями — для поддержки сложных логических рассуждений в распределенных ресурсах.
В области доступа к данным на естественном языке MCP позволяет таким приложениям, как AI2SQL, связывать языковые модели со структурированными базами данных, позволяя выполнять запросы на простом языке[8].
Протокол MCP был внедрен в научные исследовательские процессы благодаря интеграции с системами управления ссылками, такими как Zotero. Многосерверные реализации позволяют исследователям выполнять семантический поиск в своих библиотеках, извлекать аннотации PDF-файлов и создавать обзоры литературы с помощью анализа с использованием ИИ[9][10][11]. Протокол становится все более распространенным в инструментах разработки программного обеспечения.
Интегрированные среды разработки (IDE), такие как Zed, платформы кодирования, такие как Replit, и инструменты кодирования, такие как Sourcegraph, используют MCP, чтобы предоставить помощникам по кодированию на основе ИИ доступ к контексту проекта в режиме реального времени. Эта интеграция особенно ценна для таких рабочих процессов, как вайбкодинг, где необходима постоянная адаптивная помощь[5]. В сфере разработки веб-приложений такие компании, как Wix, встраивают серверы MCP в свои платформы. Это позволяет инструментам ИИ взаимодействовать с данными веб-сайта в режиме реального времени, обеспечивая динамическую генерацию контента и оперативное редактирование. Эти возможности являются ключевыми для инструментов разработки Wix на основе ИИ[12][13].
Архитектура и реализация
Протокол был выпущен с SDK на таких языках программирования, как Python, TypeScript, C# и Java[8][14].
Anthropic поддерживает открытый репозиторий эталонных реализаций MCP-серверов для популярных корпоративных систем, включая Google Drive, Slack, GitHub, Git, PostgreSQL, Puppeteer и Stripe[15].
Разработчики могут создавать собственные MCP-серверы для подключения собственных систем или специализированных источников данных к системам ИИ[15]. Открытость протокола позволяет организациям создавать специализированные соединения, сохраняя при этом совместимость с более широкой экосистемой MCP. Системы ИИ могут использовать эти соединения для предоставления помощи, специфичной для конкретной области, с соблюдением прав доступа к данным[6].
MCP построен на архитектуре клиент-сервер, которая обеспечивает структурированную связь между моделями ИИ и внешними системами.
В рамках описания MCP определены следующие ключевые понятия:
Хост: ИИ-приложение, с которым конечные пользователи взаимодействуют напрямую. Примерами служат Claude Desktop от Anthropic, интегрированные среды разработки с поддержкой ИИ, такие как Cursor, библиотеки вывода, такие как HuggingFace Python SDK, или пользовательские приложения, созданные на основе библиотек, таких как LangChain или отдельные ИИ-агенты. Хосты инициируют соединения с серверами MCP и координируют общий поток данных между пользовательскими запросами, обработкой LLM и внешними инструментами.
Клиент: компонент в хост-приложении, который управляет взаимодействием с определенным сервером MCP. Каждый клиент поддерживает соединение 1:1 с одним сервером, обрабатывая детали взаимодействия MCP на уровне протокола и выступая посредником между логикой хоста и внешним сервером.
Сервер: внешняя программа или служба, предоставляющая возможности (инструменты, ресурсы, запросы) через протокол MCP. Во многих материалах термины «клиент» и «хост» используются как взаимозаменяемые. С технической точки зрения, хост — это приложение, взаимодействующее с пользователем, а клиент — это компонент внутри хост-приложения, который управляет связью с определенным сервером MCP.
Коммуникационный поток в типичном процессе работы, использующем MCP
Взаимодействие с пользователем: пользователь взаимодействует с хост-приложением, выражая намерение или отправляя запрос.
Обработка хостом: хост обрабатывает ввод пользователя, возможно, используя модуль управления доступом (LLM) для понимания запроса и определения необходимых внешних возможностей.
Подключение клиента: хост направляет свой клиентский компонент на подключение к соответствующим серверам.
Обнаружение возможностей (capabilities): клиент запрашивает у сервера информацию о доступных возможностях (инструментах, ресурсах, запросах).
Вызов возможностей: в зависимости от потребностей пользователя или решения модуля управления доступом (LLM), хост поручает клиенту вызвать определённые возможности сервера.
Выполнение на сервере: сервер выполняет запрошенную функцию и возвращает результаты клиенту.
Интеграция результатов: Клиент передаёт эти результаты обратно на Хост, который включает их в контекст для LLM или представляет их непосредственно пользователю.
Ключевым преимуществом этой архитектуры является её модульность. Один Хост может подключаться к нескольким Серверам одновременно через разных Клиентов. Новые Серверы могут быть добавлены в экосистему без необходимости внесения изменений в существующие Хосты. Возможности можно легко скомпоновать на разных Серверах.
Эта модульность преобразует традиционную задачу интеграции M×N (M ИИ-приложений, подключающихся к N инструментам/сервисам) в более управляемую задачу M+N, где каждому Хосту и Серверу необходимо реализовать стандарт MCP только один раз.
Архитектура может показаться простой, но её преимущество заключается в стандартизации протокола связи и чётком разделении обязанностей между компонентами.
Такая архитектура позволяет создать целостную экосистему, в которой модели ИИ могут беспрепятственно подключаться к постоянно растущему массиву внешних инструментов и источников данных
Внедрение
В марте 2025 года OpenAI официально приняла MCP, после решения интегрировать стандарт во все свои продукты, включая ChatGPT, пакет разработчика приложений OpenAI Agents SDK и API Responses. Сэм Альтман описал принятие MCP как шаг к стандартизации взаимодействия с инструментами ИИ. До принятия OpenAI потенциальные преимущества MCP широко обсуждались в сообществе разработчиков, особенно в плане упрощения разработки в многомодельных средах[3][2]. Внедрив MCP, OpenAI присоединяется к другим организациям, таким как Block, Replit и Sourcegraph, внедряющим протокол в свои платформы. Такое широкое внедрение подчёркивает потенциал MCP как универсального открытого стандарта для взаимодействия и взаимодействия систем ИИ[3]. MCP может быть интегрирован с Microsoft Semantic Kernel[16] и Azure OpenAI[17]. Серверы MCP могут быть развернуты в Cloudflare[18]. Демис Хассабис, генеральный директор Google DeepMind, подтвердил в апреле 2025 года поддержку MCP в будущих моделях Gemini и связанной с ними инфраструктуре, описав протокол как «быстро становящийся открытым стандартом для эпохи агентов ИИ»[4].
Microsoft вложила значительные средства в MCP для улучшения интеграции ИИ в своей экосистеме, включая GitHub, Microsoft 365 и Azure. GitHub, наряду с Microsoft, присоединился к руководящему комитету MCP на конференции Microsoft Build 2025, предоставив службу реестра для обнаружения и управления серверами MCP. Сервер Azure MCP, находящийся в общедоступной предварительной версии, подключает агентов ИИ к таким сервисам Azure, как хранилище, базы данных и аналитика журналов, а Microsoft 365 поддерживает MCP для создания агентов ИИ и приложений с интеграцией с Copilot. В мае 2025 года Microsoft добавила встроенную поддержку MCP в Copilot Studio, предлагая ссылки на любой сервер MCP одним щелчком мыши, новые списки инструментов, потоковую передачу данных, а также полную трассировку и аналитику.
В этом релизе MCP позиционировался как мост по умолчанию для Copilot к внешним базам знаний, API и Dataverse[19] . Кроме того, Microsoft совместно с Anthropic разработала официальный C# SDK для MCP, доступный в виде пакета NuGet с открытым исходным кодом (ModelContextProtocol), который обеспечивает бесшовную интеграцию ИИ в экосистему .NET для создания серверов и клиентов MCP[20]. С тех пор было добавлено множество серверов MCP, что позволяет интегрировать LLM с различными приложениями[21].
MCP, Информаторий и дружественные вики-проекты
Возможность организации MCP-сервера для Информатория и других дружественных вики-проектов находится в стадии обсуждения.
MCP и Википедия
Существует ряд независимых реализаций MCP-сервера, обеспечивающих доступ к Википедии и другим ресурсам Wikimedia Foundation. Кроме того, сам фонд Wikimedia Foundation предоставляет на коммерческой основе доступ к Wikimedia Enterprise API. Доступ к этому API возможен через специализированный MCP-сервер.
Принятие
The Verge утверждает, что MCP отвечает растущему спросу на ИИ-агентов, учитывающих контекст и способных безопасно извлекать данные из различных источников.[5]
Быстрое внедрение протокола OpenAI, Google DeepMind и такими разработчиками инструментов, как Zed и Sourcegraph, свидетельствует о растущем консенсусе относительно его полезности[3][22]. В апреле 2025 года исследователи безопасности опубликовали анализ, в котором говорилось о наличии множества нерешённых проблем безопасности MCP, включая промпт-инъекцию[23], проблемы с правами доступа к инструментам, которая приводит к тому, что комбинирование инструментов может привести к краже файлов[24], а похожие инструменты могут незаметно подменять доверенные[25].
MCP сравнивают с OpenAPI, аналогичной спецификацией, предназначенной для описания API[26][27].
См. также
Литература
- Hou, Xinyi; Zhao, Yanjie; Wang, Shenao; Wang, Haoyu (2025). "Model Context Protocol (MCP): Landscape, Security Threats, and Future Research Directions". arXiv:2503.23278 [cs.CR].
- Edwards, Benj (April 1, 2025). "MCP: The new "USB-C for AI" that's bringing fierce rivals together". Ars Technica.
- Jackson, Fiona (March 28, 2025). "OpenAI Agents Now Support Rival Anthropic's Protocol, Making Data Access 'Simpler, More Reliable'". TechRepublic.
- Masson, Colin. Context Is the Missing Link: The Emergence of the Model Context Protocol in Industrial AI . ARC Advisory Group (25 марта 2025).
- Laith Al-Saadoon; Pranjali Bhandari; Paul Vincent; Anita Lewis; Jimin Kim; Justin Lewis. Introducing AWS MCP Servers for code assistants (Part 1) . Amazon AWS (1 апреля 2025).
- Desai, Zankar. Introducing Model Context Protocol (MCP) in Copilot Studio: Simplified Integration with AI Apps and Agents . Microsoft Copilot Studio Blog, Microsoft (19 марта 2025).
- Wagner, Tim. Understanding Model Context Protocol (MCP) . Vendia (13 мая 2025).
Ссылки
Примечания
- ↑ David, Emilia (November 25, 2024). "Anthropic releases Model Context Protocol to standardize AI-data integration". VentureBeat. Дата обращения: 12 мая 2025.
- ↑ 2,0 2,1 2,2 Kumar, Vinay (March 26, 2025). "The open source Model Context Protocol was just updated — here's why it's a big deal". VentureBeat. Дата обращения: 12 мая 2025.
- ↑ 3,0 3,1 3,2 3,3 Wiggers, Kyle (March 25, 2025). "OpenAI adopts rival Anthropic's standard for connecting AI models to data". TechCrunch.
- ↑ 4,0 4,1 Wiggers, Kyle (April 9, 2025). "Google to embrace Anthropic's standard for connecting AI models to data". TechCrunch. Дата обращения: 12 мая 2025.
- ↑ 5,0 5,1 5,2 Roth, Emma (November 25, 2024). "Anthropic launches tool to connect AI systems directly to datasets". The Verge.
- ↑ 6,0 6,1 6,2 6,3 6,4 6,5 6,6 6,7 Introducing the Model Context Protocol . Anthropic (25 ноября 2024). Дата обращения: 12 мая 2025.
- ↑ Edwards, Benj (1 April 2025). "MCP: The new "USB-C for AI" that's bringing fierce rivals together". Ars Technica. Дата обращения: 24 мая 2025.
- ↑ 8,0 8,1 8,2 Ouellette, Michael. Model context protocol: the next big step in generating value from AI (амер. англ.). Engineering.com (9 мая 2025). Дата обращения: 23 июня 2025.
- ↑ Yu, Steven (2025-07-02), 54yyyu/zotero-mcp, Дата обращения: 3 июля 2025
- ↑ Taylor, Aaron (2025-07-02), kujenga/zotero-mcp, Дата обращения: 3 июля 2025
- ↑ Kalia, Abhishek (2025-07-02), kaliaboi/mcp-zotero, Дата обращения: 3 июля 2025
- ↑ Wix just opened the door to quicker and easier coding with new AI tool . TechRadar Pro (27 марта 2025). Дата обращения: 22 мая 2025.
- ↑ Wix Unveils the Wix Model Context Protocol Server for AI-Driven Web App Development . Enterprise AI World (27 марта 2024). Дата обращения: 22 мая 2025.
- ↑ Model Context Protocol (англ.). GitHub. Дата обращения: 20 июня 2025.
- ↑ 15,0 15,1 Bastian, Matthias. Anthropic's new open protocol lets AI systems tap into any data source (амер. англ.). The Decoder (25 ноября 2024). Дата обращения: 14 июня 2025.
- ↑ Wallace, Mark. Integrating Model Context Protocol Tools with Semantic Kernel: A Step-by-Step Guide . Semantic Kernel Dev Blog, Microsoft (5 марта 2025). Дата обращения: 12 мая 2025.
- ↑ mrajguru. Model Context Protocol (MCP): Integrating Azure OpenAI for Enhanced Tool Integration and Prompting . AI - Azure AI services Blog, Microsoft (16 марта 2025). Дата обращения: 12 мая 2025.
- ↑ Brendan Irvine-Broque; Dina Kozlov; Glen Maddern. Build and deploy Remote Model Context Protocol (MCP) servers to Cloudflare . Cloudflare (25 марта 2025). Дата обращения: 12 мая 2025.
- ↑ Desai, Zankar. Model Context Protocol (MCP) is now generally available in Microsoft Copilot Studio (амер. англ.). Microsoft Copilot Blog (29 мая 2025). Дата обращения: 3 августа 2025.
- ↑ Mike, Maria. Microsoft partners with Anthropic to create official C# SDK for Model Context Protocol . Microsoft Developer Blog (2 апреля 2025). Дата обращения: 1 августа 2025.
- ↑ Awan, Abid Ali. 10 Awesome MCP Servers . KDnuggets. Дата обращения: 12 мая 2025.
- ↑ Sha, Arjun. What is Model Context Protocol (MCP) Explained . Beebom.com (14 апреля 2025).
- ↑ Lakshmanan, Ravie. Researchers Demonstrate How MCP Prompt Injection Can Be Used for Both Attack and Defense . thehackernews.com (30 апреля 2025).
- ↑ Fischer, Marc; Beurer-Kellner, Luca. MCP Security Notification: Tool Poisoning Attacks . InvariantLabs (1 апреля 2025).
- ↑ Martin, Jason; Ring, Leo; McCauley, Conor; Kan, Marcus; Schulz, Kasimir; Yeung, Kenneth. MCP: Model Context Pitfalls in an Agentic World . hiddenlayer.com (10 апреля 2025).
- ↑ MacManus, Richard. MCP: The Missing Link Between AI Agents and APIs . The New Stack (13 марта 2025). Дата обращения: 29 мая 2025.
- ↑ Fanelli, Alessio. Why MCP Won (англ.). www.latent.space. Дата обращения: 29 мая 2025.