Блог / MCP

Model Context Protocol простыми словами: гид 2026

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

•5 мин чтения
MCP Гайд

Коротко: MCP (Model Context Protocol) — открытый протокол, который Anthropic представила в конце 2024 года. Он задаёт один стандартный способ подключать к AI-приложению внешние инструменты и данные: сервер объявляет, что он умеет (инструменты, ресурсы, промпты), клиент это потребляет. До MCP каждую связку «модель + сервис» писали заново; теперь сервер пишется один раз и работает со всеми MCP-клиентами сразу.

Проблема, которую закрыл MCP

До ноября 2024 подключение агента к внешнему миру выглядело так: у каждого сервиса свой API, у каждого клиента свой формат function calling. M клиентов на N сервисов дают M×N интеграций, и каждую пишут руками. Хочешь дать Claude доступ к GitHub — пишешь прослойку. Завтра то же самое для Cursor — пишешь вторую.

Anthropic предложила выкинуть из уравнения умножение: сервис один раз реализует MCP-сервер, приложение один раз — MCP-клиент, и дальше любой клиент работает с любым сервером. Сама Anthropic называла это «USB-C для AI-приложений» — аналогия прилипла, потому что точная.

Протокол открытый: спецификация и SDK лежат на GitHub в организации modelcontextprotocol. Внутри — JSON-RPC 2.0: запросы, ответы и уведомления в UTF-8.

Спецификация живёт и меняется: первая редакция вышла в ноябре 2024, весной 2025 транспорт HTTP+SSE заменили на streamable HTTP, дальше добавились OAuth-авторизация и мелкие примитивы. Для пользователя это значит одно: гайды годовалой давности могут описывать уже заменённые механики — сверяйтесь со свежей спецификацией.

MCP превращает M×N интеграций в M+N через одну шину

Что умеет MCP-сервер

Сервер отдаёт клиенту три примитива:

  • Инструменты (tools) — функции, которые модель может вызвать: search_nodes, create_issue, deploy. У каждого имя, описание и JSON-схема параметров; по описанию модель понимает, когда инструмент уместен.
  • Ресурсы (resources) — данные, адресуемые URI: file:///…, документ, запись. Ресурсы выбирает приложение или пользователь, а не модель напрямую.
  • Промпты (prompts) — готовые шаблоны запросов, которые пользователь вызывает из интерфейса клиента.

Этого хватает, чтобы описать почти любую интеграцию: «память» — инструменты чтения и записи, «доступ к файлам» — ресурсы, «код-ревью по чек-листу» — промпт.

Два транспорта: stdio и streamable HTTP

Спецификация определяет ровно два стандартных транспорта.

stdio. Клиент сам запускает сервер как дочерний процесс и общается с ним через stdin/stdout: сообщения JSON-RPC, разделённые переводами строк. Локально, быстро, без сети — так работают серверы-команды вроде npx -y @modelcontextprotocol/server-filesystem. Минус симметричный: процесс живёт на вашей машине и с правами вашей учётной записи.

Streamable HTTP. Сервер — отдельный процесс с одним HTTP-эндпоинтом (POST и GET на одном пути, например /mcp), опционально с SSE для потоковых ответов. Этот транспорт заменил исходный HTTP+SSE из первой редакции спецификации. Он подходит для удалённых серверов и общих командных инстансов; для авторизации спецификация опирается на OAuth 2.1.

Правило выбора простое: свой инструмент на своей машине — stdio, чужой или общий сервис — streamable HTTP. Наш MaxGraph работает по streamable HTTP: сервер в Docker, клиенты подключаются по URL.

Два транспорта MCP: локальный stdio и удалённый streamable HTTP

Экосистема: клиенты, серверы, реестр

За два года протокол перестал быть «штукой для Claude». Клиенты с поддержкой MCP: Claude Desktop и Claude Code, Cursor, VS Code, Windsurf, Zed; в 2025 году поддержку добавили ChatGPT и Gemini.

Серверов — тысячи: файловая система, GitHub, Postgres, Slack, браузер, Figma. Ориентироваться помогают официальный реестр (registry.modelcontextprotocol.io, открыт в превью в сентябре 2025) и community-подборки вроде awesome-mcp-servers. Справочный монорепозиторий modelcontextprotocol/servers собрал больше 91 тысячи звёзд — самый звёздный репозиторий экосистемы на октябрь 2026.

Отдельно стоит сказать, чем MCP не является. Это не фреймворк агентов и не способ «сделать модель умнее»: протокол не решает, когда и зачем вызывать инструмент, — это остаётся на модели и ваших инструкциях. MCP отвечает ровно за один вопрос: как клиент и сервер договариваются друг с другом.

Как выглядит подключение

Один JSON-фрагмент. Для Claude Code подключение локального сервера памяти выглядит так:

{
  "mcpServers": {
    "maxgraph": {
      "type": "http",
      "url": "http://localhost:8787/mcp",
      "headers": { "Authorization": "Bearer ВАШ_ТОКЕН" }
    }
  }
}

Сохранили в .mcp.json проекта, перезапустили клиент — инструменты сервера появились у агента. Подробный разбор для Claude Code и Cursor, включая шесть типичных ошибок, — в нашем туториале.

При чём тут память

MCP — транспорт, а не сценарий использования. Но один сценарий оказался для нас главным: долговременная память агента. Сервер памяти по MCP — это процесс, который хранит граф знаний и отдаёт агенту инструменты вроде session_start и add_observations. Мы делаем именно такой сервер, и весь этот блог — по сути о том, что происходит, когда у агента появляется память. Подробнее — в гайде по памяти агентов.

FAQ

MCP — это только про Claude? Нет. Протокол открытый; кроме Claude его поддерживают Cursor, VS Code, Windsurf и Zed, а с 2025 года — ChatGPT и Gemini. Сервер, написанный под MCP, работает со всеми ними.

Чем MCP отличается от обычного REST API? REST — контракт между сервисами, написанный для программиста. MCP — контракт между сервисом и моделью: сервер сам публикует имена инструментов, схемы параметров и описания, чтобы модель понимала, когда и зачем их вызывать. Под капотом у HTTP-транспорта при этом обычный HTTP.

Безопасно ли давать агенту инструменты? Инструмент исполняется с правами того, кто его запустил: stdio-сервер — с правами вашей учётной записи, HTTP-сервер — с правами своего токена. Правила те же, что с любым кодом: ставьте серверы из источников, которым доверяете, и не раздавайте лишних доступов.

Как написать свой MCP-сервер? Официальные SDK есть для TypeScript и Python, community-SDK — для большинства популярных языков. Минимальный сервер — это объявить пару инструментов и поднять транспорт; дальше читайте спецификацию.

Что дальше

MaxGraph

Дай своему агенту память

Триал 7 дней без карты. Установка — один промпт, дальше агент сделает сам.

Тарифы ✓ Скопировано