﻿---
title: "MCP: единый протокол для инструментов"
description: "Model Context Protocol как стандарт подключения инструментов, ресурсов и промптов к AI-приложениям: как он устроен, что даёт проекту и какие риски добавляет."
---

## Что делает слой

MCP (Model Context Protocol) — открытый стандарт, который описывает, как подключать инструменты, ресурсы и промпты к AI-приложениям. Его часто называют «USB-C для ИИ»: вместо отдельной интеграции под каждый клиент появляется один протокол.

Стандарт появился в Anthropic, сейчас развивается под Linux Foundation / Agentic AI Foundation. Поддерживается большинством крупных клиентов — Claude, Cursor, VS Code, ChatGPT и другими.

## Зачем это проекту

До MCP каждая связка «агент ↔ система» писалась отдельно: свой набор функций, свой формат описания, своя авторизация. Число интеграций растёт квадратично, поддержка — тоже.

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

```text
без MCP:  N клиентов × M систем = N×M интеграций
с MCP:    N клиентов + M серверов  = N+M интеграций
```

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

## Что публикует сервер

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

Транспорты различаются: локальный процесс по STDIO или удалённый сервер по HTTP. Для команды это означает выбор между «инструмент живёт рядом с проектом» и «инструмент общий для нескольких проектов».

## Где MCP не помогает

- **Права доступа.** Протокол описывает, *как* вызвать инструмент, но не решает, *кому* это можно. Авторизация остаётся задачей сервера.
- **Качество инструментов.** Плохо описанный инструмент с размытой схемой остаётся плохим — MCP лишь делает его переносимым.
- **Наблюдаемость.** Трассировка вызовов, стоимость и ошибки — отдельный слой, см. [Наблюдаемость](https://wpcraft.ru/kb/ai/architecture/observability.md).
- **Безопасность контура.** Подключение внешнего сервера расширяет поверхность атаки так же, как любой новый API-доступ.

## Реализации в проектах

- **WordPress** — [AI-архитектура WordPress](https://wpcraft.ru/kb/stacks/wordpress/ai/wp-ai-architecture.md) объясняет место Abilities API и MCP Adapter в платформе, [практическое руководство по MCP Adapter](https://wpcraft.ru/kb/stacks/wordpress/ai/wordpress-mcp-adapter.md) показывает запуск, а [Enable Abilities for MCP](https://wpcraft.ru/kb/stacks/wordpress/ai/enable-abilities-for-mcp.md) даёт готовый набор из 71 инструмента.
- **Внешние сервисы** — GitHub, браузер, базы данных и файловые системы публикуются отдельными MCP-серверами; см. таблицу внешних инструментов в [Инструменты агента](https://wpcraft.ru/kb/ai/architecture/tools.md).
- **Ассистенты** — подключаются к серверам как MCP-клиенты; конкретные конфиги зависят от харнесса (см. [Харнессы и код-ассистенты](https://wpcraft.ru/kb/ai/architecture/harnesses.md)).

## Что проверить в проекте

- **Кто владеет сервером.** Публичный MCP-сервер без владельца и обновлений — это неисправляемая дыра в правах.
- **Что открыто наружу.** Инструмент, доступный по HTTP, требует отдельной аутентификации; локальный STDIO-сервер наследует права пользователя.
- **Есть ли список разрешённых инструментов.** Явный allowlist безопаснее, чем «всё, что опубликовано».
- **Отделены ли записи от чтения.** Публикация, изменение и удаление — отдельные инструменты с отдельными правами.

## Материалы и источники

- [Системное мышление для агентного ИИ](https://wpcraft.ru/blog/systems-thinking-for-agentic-ai) — статья WPCraft, раздел «MCP»