# Что такое MCP-сервер и зачем он нужен

> MCP (Model Context Protocol) - открытый протокол, по которому AI-агент подключается к внешним инструментам и данным. MCP-сервер - это программа, которая описывает агенту набор доступных действий и выполняет их по запросу. Протокол представила Anthropic в ноябре 2024 года, сегодня его поддерживают Claude Code, Cursor, Claude Desktop и другие клиенты.

Опубликовано: 2026-09-09
Источник: https://nodbox.ru/blog/chto-takoe-mcp-server/

---
Языковая модель сама по себе умеет одно: получать текст и отвечать текстом.
Она не может открыть файл, сходить в базу, перезапустить сервис. Всё, что
выглядит как действие агента, на самом деле делает программа вокруг модели -
и MCP описывает, как эта программа устроена.

## Определение

**MCP (Model Context Protocol) - открытый протокол, по которому AI-агент
подключается к внешним инструментам и источникам данных.** MCP-сервер - это
программа, которая объявляет агенту список доступных действий и выполняет их
по запросу.

Протокол представила Anthropic в ноябре 2024 года и сразу опубликовала
спецификацию открыто. За полтора года его поддержали Claude Code, Cursor,
Claude Desktop, VS Code и десятки других клиентов, а серверов написали тысячи.

## Зачем понадобился отдельный протокол

До MCP каждая интеграция писалась заново. Плагин для одного редактора не
работал в другом, потому что у каждого был свой формат описания инструментов.
Число комбинаций росло как произведение: N клиентов на M сервисов.

MCP превращает произведение в сумму. Сервис пишет один MCP-сервер, и его видят
все клиенты. Редактор поддерживает один протокол, и получает все серверы.
Ровно то же самое в своё время сделал LSP для подсветки и автодополнения в
редакторах - и по той же причине прижился.

## Как это устроено

Три роли:

**Хост** - приложение, где сидит пользователь: Claude Code, Cursor, Claude
Desktop.

**Клиент** - часть хоста, которая говорит по протоколу. Пользователь его не видит.

**Сервер** - программа, которая даёт возможности. Может работать на
той же машине или удалённо.

Сервер объявляет три вида вещей:

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

## Что видит агент

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

Выглядит это примерно так:

```json
{
  "name": "deploy_project",
  "description": "Собирает проект из указанной папки и разворачивает его на сервере. Определяет стек автоматически. Возвращает адрес работающего приложения.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "path": { "type": "string", "description": "Путь к папке проекта" },
      "name": { "type": "string", "description": "Имя проекта" }
    },
    "required": ["path"]
  }
}
```

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

## Что даёт MCP на практике

Разница видна на простом сравнении. Без MCP разговор про инфраструктуру
выглядит так:

> - Как посмотреть логи моего бота?
> - Подключитесь по SSH и выполните `journalctl -u mybot -n 100`.

С MCP - так:

> - Покажи логи бота за последний час.
> - *(агент вызывает `get_logs`)* Вот последние записи. Бот перезапускался
>   дважды, оба раза - таймаут при обращении к API.

Во втором случае человек не выходил из редактора и не знал ни слова `journalctl`.

## Безопасность: главный вопрос

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

Что делает нормальный MCP-сервер:

- **Разделяет действия по риску.** Чтение - без подтверждения. Изменение,
  трата денег, удаление - только с явного согласия человека.
- **Ограничивает область.** Токен доступа даёт права на конкретный проект,
  а не на весь аккаунт.
- **Пишет журнал.** Каждое действие агента видно постфактум.

Что должен делать пользователь: **читать список инструментов перед подключением
сервера.** Это ровно тот же вопрос, что с расширениями браузера - вы ставите в
своё рабочее окружение чужой код с доступом к вашим данным.

## Где взять серверы

Серверы публикуются в реестрах: официальном реестре MCP, а также в
агрегаторах вроде Smithery, mcp.so, Glama и в списках на GitHub. Многие
компании публикуют свои: у облачных провайдеров, систем управления задачами,
баз данных и платформ деплоя они уже есть.

Подключение обычно сводится к одной строке в конфигурационном файле клиента -
подробнее в статье [как подключить MCP-сервер к Cursor и Claude
Code](/blog/kak-podklyuchit-mcp-server/).

## Коротко

- MCP - открытый протокол подключения агента к внешним инструментам, от
  Anthropic, ноябрь 2024.
- MCP-сервер объявляет инструменты, ресурсы и промпты; выполняет их по запросу.
- Модель выбирает инструмент по его текстовому описанию - поэтому описания важны.
- Протокол убирает комбинаторный взрыв интеграций: один сервер видят все клиенты.
- Главный вопрос при подключении - какие действия сервер разрешает агенту без
  подтверждения.