Все статьи
MCPГайд

Что такое MCP: протокол, который расширяет возможности AI-агентов

Omni Router

Что такое MCP

Что такое MCP

Model Context Protocol (MCP) — это открытый стандарт, разработанный Anthropic, для подключения AI-агентов к внешним инструментам и источникам данных. Протокол определяет единый способ взаимодействия между AI-моделью и любым сервисом: базами данных, поисковыми системами, файловыми системами, API и многим другим.

Самая точная аналогия — USB-порт для AI. До USB каждое устройство требовало свой разъём и драйвер. MCP решает ту же проблему: вместо десятков разных интеграций — один стандартный интерфейс для подключения чего угодно.

MCP появился в конце 2024 года и за несколько месяцев стал де-факто стандартом. Его поддерживают Claude Code, OpenAI Codex, Cursor, Windsurf и десятки других инструментов.

Как работает MCP

Архитектура MCP состоит из четырёх уровней:

Host (Claude Code, Codex)
  └── Client (встроен в host)
        └── Server (MCP-сервер)
              ├── Tools (действия: поиск, запись, API-вызовы)
              └── Resources (данные: файлы, записи из БД, документация)

Host — приложение, в котором работает AI-агент (Claude Code, Codex CLI, Cursor).

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

Server — отдельный процесс, который предоставляет tools и resources. Один host может подключаться к нескольким серверам одновременно.

Что предоставляют серверы

ТипОписаниеПример
ToolsДействия, которые агент может выполнитьВыполнить SQL-запрос, создать issue в GitHub
ResourcesДанные для чтенияСодержимое файла, запись из БД, документация
PromptsШаблоны промптовПредзаданные инструкции для типовых задач

Транспорт

MCP поддерживает два типа подключения:

  • stdio — локальные серверы, запускаются как дочерний процесс. Быстро, безопасно, без сети
  • SSE / Streamable HTTP — удалённые серверы, доступные по URL. Подходят для командной работы и облачных сервисов

Обмен данными между клиентом и сервером идёт через JSON-RPC 2.0 — тот же протокол, что используется в Language Server Protocol (LSP) для IDE.

Зачем нужен MCP

Без MCP каждый инструмент требует отдельной интеграции. Хотите, чтобы AI-агент работал с PostgreSQL? Пишите плагин. Нужен поиск в интернете? Ещё один плагин. GitHub, Jira, Slack — каждый раз заново.

С MCP — один протокол, любое количество инструментов. AI-агент получает доступ к реальному миру:

  • Читать и писать в базы данных
  • Искать актуальную информацию в интернете
  • Управлять файлами за пределами проекта
  • Вызывать произвольные API
  • Автоматизировать действия в браузере

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

Примеры использования

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

{
  "mcpServers": {
    "exa": {
      "command": "npx",
      "args": ["-y", "exa-mcp-server"],
      "env": {
        "EXA_API_KEY": "your-key"
      }
    }
  }
}

Работа с базами данных (PostgreSQL)

Запросы к БД прямо из чата с агентом. Можно попросить агента проанализировать схему, написать и выполнить запрос, объяснить результаты. Полезно для дебага, аналитики и миграций.

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "POSTGRES_CONNECTION_STRING": "postgresql://user:pass@localhost:5432/mydb"
      }
    }
  }
}

Управление репозиториями без выхода из терминала. Агент может создавать issues, просматривать pull requests, искать код по всему GitHub, анализировать CI/CD-логи.

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."
      }
    }
  }
}

Документация (Context7)

Получение актуальной документации для любой библиотеки. Вместо того чтобы искать в браузере, агент сам находит нужные разделы docs и использует их в работе. Особенно полезно для новых версий библиотек, которые ещё не попали в обучающие данные модели.

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

Файловая система

Чтение и запись файлов за пределами рабочей директории проекта. Агент может работать с конфигами в домашней директории, читать логи из /var/log, обращаться к файлам в других проектах.

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/Documents", "/tmp"]
    }
  }
}

Браузер (Playwright)

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

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["-y", "@playwright/mcp"]
    }
  }
}

MCP в Claude Code

Claude Code поддерживает MCP-серверы через файл .mcp.json. Его можно разместить:

  • В корне проекта (.mcp.json) — серверы доступны только в этом проекте
  • В домашней директории (~/.claude/.mcp.json) — серверы доступны глобально

Формат конфигурации:

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "POSTGRES_CONNECTION_STRING": "postgresql://localhost:5432/mydb"
      }
    }
  }
}

После добавления сервера перезапустите Claude Code. Агент автоматически увидит доступные tools и сможет их вызывать. Посмотреть список подключённых серверов и их tools можно командой /mcp.

Также можно добавить MCP-сервер интерактивно прямо из Claude Code:

claude mcp add context7 -- npx -y @upstash/context7-mcp

MCP в Codex

OpenAI Codex CLI также поддерживает MCP-серверы. Настройка выполняется через файл config.toml, который находится в:

  • macOS / Linux: ~/.config/codex/config.toml
  • Windows: %APPDATA%\codex\config.toml

Формат конфигурации:

[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]

[mcp_servers.postgres]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-postgres"]

[mcp_servers.postgres.env]
POSTGRES_CONNECTION_STRING = "postgresql://localhost:5432/mydb"

После сохранения перезапустите Codex. Серверы запустятся автоматически, и агент получит доступ к их инструментам.

Как создать свой MCP-сервер

Если нужного MCP-сервера не существует, его можно написать самостоятельно. Доступны официальные SDK:

  • TypeScript: @modelcontextprotocol/sdk
  • Python: mcp

Минимальный сервер на TypeScript:

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";

const server = new McpServer({
  name: "my-server",
  version: "1.0.0",
});

server.tool("hello", "Says hello", { name: { type: "string" } }, async ({ name }) => ({
  content: [{ type: "text", text: `Hello, ${name}!` }],
}));

const transport = new StdioServerTransport();
await server.connect(transport);

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

Каталог готовых серверов доступен на mcp.so и в официальном репозитории.

Итог

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

Omni Router поддерживает работу с Claude Code и Codex, которые используют MCP. Подключайте любые MCP-серверы и используйте всю мощь AI-агентов через единый прокси.

Начать работу ->