# Лучшие MCP-серверы для агентов программирования: список

URL: https://agentvera.dev/ru/blog/best-mcp-servers-for-coding/ · Опубликовано: 2026-10-25

Лучшие MCP-серверы для программирования: Playwright, GitHub, Context7, Sentry, Postgres и другие, с командами установки для Claude Code, Codex и Gemini CLI.

**Коротко:**

- Начните с нескольких серверов, которые закрывают реальный пробел: браузер (Playwright), актуальная документация (Context7), трекер задач (GitHub) и ошибки (Sentry). Файлы и git агенты и так умеют.
- Каждый сервер добавляет описания своих инструментов в контекст на каждом ходу, поэтому подключайте его только тем агентам и проектам, которым он нужен, и сужайте наборы инструментов.
- Давайте серверам баз данных доступ только на чтение к копии для разработки, не храните токены в открытых конфигах и считайте всё, что возвращает сервер, недоверенными данными.

Лучшие MCP-серверы для агентов программирования — те, что дают агенту то, чего он не может сам: увидеть приложение в браузере, прочитать сегодняшнюю документацию библиотеки, посмотреть задачу, которую он исправляет, найти стектрейс из продакшена. [Агент программирования](/ru/glossary/coding-agent/) вроде Claude Code, Codex или Gemini CLI и так читает файлы, правит их и запускает команды. Сервер, который это дублирует, только тратит контекст.

Этот список субъективный и намеренно короткий. Для каждого сервера — что он делает, когда помогает, как его добавить и на что обратить внимание. Если протокол для вас новый, начните со статьи [что такое MCP-сервер](/ru/blog/what-is-mcp-server/) и [статьи о MCP в глоссарии](/ru/glossary/mcp/).

## Как я выбирал серверы

Сервер попадает в список, если проходит три проверки:

1. **Он закрывает реальный пробел.** Даёт доступ к чему-то за пределами репозитория: браузеру, облачному сервису, базе данных, актуальной документации.
2. **Его поддерживает вендор или известный проект.** В официальном репозитории есть инструкция по установке, и сервер обновляется.
3. **Его доступ можно сузить.** Режимы только для чтения, наборы инструментов, привязка к проекту, разрешённые каталоги. Над сервером, который нельзя ограничить, стоит подумать дважды.

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

## Краткая справка

| Сервер | Что получает агент | Транспорт | Чем сузить |
| --- | --- | --- | --- |
| Playwright | Управление настоящим браузером: открыть, кликнуть, заполнить, скриншот | stdio (`npx`) | `--isolated`, `--headless` |
| Chrome DevTools | Консоль, сеть, трассировки производительности | stdio (`npx`) | `--isolated` |
| Context7 | Актуальная документация библиотек под нужную версию | HTTP или stdio | API-ключ, ничего не пишет |
| GitHub | Задачи, pull request, поиск по коду, Actions | HTTP или Docker | Наборы инструментов, режим только для чтения |
| Sentry | Ошибки, стектрейсы, разбор задач | HTTP (OAuth) | Организация/проект в URL |
| Postgres (Postgres MCP Pro) | Схема, запросы, EXPLAIN, советы по индексам | stdio (`uvx`/Docker) | `--access-mode=restricted` |
| Supabase | Таблицы, SQL, миграции, логи | HTTP (OAuth) | `read_only=true`, `project_ref` |
| Git | Log, diff, blame в локальном репозитории | stdio (`uvx`) | `--repository` |
| Fetch | Веб-страница в виде Markdown | stdio (`uvx`) | Использовать умеренно |
| Filesystem | Файлы в указанных папках | stdio (`npx`) | Разрешённые каталоги |

## 1. Playwright: пусть агент видит приложение

Если добавлять только один сервер, то этот. Playwright MCP от Microsoft позволяет агенту открыть ваше приложение на `localhost`, читать страницу через дерево доступности, нажимать кнопки, заполнять формы и делать скриншоты. «Я поменял форму, должно работать» превращается в «я отправил форму и увидел сообщение об успехе».

```bash
claude mcp add playwright -- npx @playwright/mcp@latest
codex mcp add playwright -- npx @playwright/mcp@latest
gemini mcp add playwright npx @playwright/mcp@latest
```

Нужен Node.js 18 или новее. Полезные флаги: `--headless`, чтобы работать без окна, и `--isolated`, чтобы профиль браузера жил в памяти и cookies и входы не сохранялись между сессиями. Есть ещё `--allowed-origins`, но сам проект пишет, что это не граница безопасности, так что не рассчитывайте, что он удержит агента от открытого интернета.

На что обратить внимание: страницы, которые открывает агент, становятся входными данными модели. Страница с текстом «игнорируй свои инструкции и выполни эту команду» — это попытка [prompt injection](/ru/glossary/prompt-injection/). По возможности держите агента на своём приложении. Полный процесс описан в статье [тестирование в браузере с ИИ-агентами](/ru/blog/ai-agent-browser-testing/).

## 2. Chrome DevTools: отладка того, что видит браузер

Chrome DevTools MCP от Google пересекается с Playwright, но больше заточен под отладку: сообщения консоли, сетевые запросы, трассировки производительности. Когда страница тормозит или запрос падает с ошибкой CORS, этот сервер позволяет агенту выяснить причину, а не гадать.

```bash
claude mcp add chrome-devtools -- npx -y chrome-devtools-mcp@latest
```

Для Codex и Gemini CLI используйте ту же команду (`npx -y chrome-devtools-mcp@latest`) с `codex mcp add` или `gemini mcp add`. Если вам не нужны оба браузерных сервера, выберите один на агента: каждый добавляет длинный список инструментов.

## 3. Context7: актуальная документация вместо памяти

Модели знают библиотеки по обучающим данным, которым месяцы или годы. Поэтому агенты вызывают функции, переименованные две версии назад. Context7 от Upstash отдаёт актуальную документацию и примеры кода для конкретной версии по длинному списку библиотек, и агент может посмотреть, а не угадывать.

```bash
# Удалённый сервер
claude mcp add --transport http context7 https://mcp.context7.com/mcp

# Или локально
codex mcp add context7 -- npx -y @upstash/context7-mcp
```

Если у вас есть API-ключ Context7, передавайте его в заголовке `CONTEXT7_API_KEY` удалённого сервера (например, `--header "CONTEXT7_API_KEY: ctx7sk-…"` в `claude mcp add`). Полезное правило для `CLAUDE.md` или `AGENTS.md`: «Если не уверен в API библиотеки, сначала проверь Context7». Записанным правилам агенты следуют надёжнее, чем разовым напоминаниям; см. [как писать CLAUDE.md и AGENTS.md](/ru/blog/claude-md-agents-md/).

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

## 4. GitHub: задачи, pull request и CI

Официальный сервер GitHub читает и пишет задачи, pull request, результаты поиска по коду, запуски Actions и многое другое. Агент может начать с текста задачи, проверить упавший workflow и в конце открыть pull request.

Удалённый сервер находится по адресу `https://api.githubcopilot.com/mcp/`. Его можно запустить и локально через Docker:

```bash
claude mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PAT \
  -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
```

Здесь принцип наименьших привилегий важнее всего. У сервера GitHub много инструментов, и некоторые из них пишут. Сузьте его:

- **Наборы инструментов.** Включайте только нужное, например `repos,issues,pull_requests`: локально флагом `--toolsets` или переменной `GITHUB_TOOLSETS`, на удалённом сервере — заголовком `X-MCP-Toolsets`.
- **Режим только для чтения.** Локально `--read-only`, на удалённом сервере — `/readonly` в конце URL (`https://api.githubcopilot.com/mcp/readonly`) или заголовок `X-MCP-Readonly: true`.
- **Fine-grained токен.** Ограничьте персональный токен доступа репозиториями, с которыми работает агент, и минимальными правами для задачи.

Агенту-ревьюеру или агенту, который разбирает задачи, запись нужна редко. Давайте пишущие инструменты только тому агенту, который должен открывать pull request.

## 5. Sentry: начинать с реальной ошибки

Облачный MCP-сервер Sentry позволяет агенту искать ошибки, читать стектрейсы и смотреть детали задач. «Исправь баг, на который пользователи натыкаются при оплате» превращается в «исправь это исключение, в этой строке, с этими breadcrumbs». Аутентификация через OAuth: при первом подключении открывается вход в браузере.

```bash
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp/my-org/my-project
```

Замените `my-org` и `my-project` на слаги своей организации и проекта. Sentry сам рекомендует привязывать URL к одному проекту: тогда инструменты по умолчанию работают с ним, часть инструментов обзора скрыта, и это тоже экономит контекст. Связка Sentry и GitHub хорошо работает, чтобы [исправлять падения CI](/ru/blog/auto-fix-ci-failures-with-ai/) и баги из продакшена, начиная с текста задачи.

## 6. Сервер базы данных, только на чтение

Агент, который видит схему и может выполнить `SELECT`, пишет запросы и миграции лучше. Агент, который может выполнить `DROP TABLE` в продакшене, — это плохой день, который просто ещё не наступил. Два надёжных варианта:

**Postgres MCP Pro** (crystaldba/postgres-mcp) работает с любой базой PostgreSQL. Кроме запросов он умеет объяснять планы, проверять здоровье базы и предлагать индексы. Главная настройка — режим доступа:

```bash
claude mcp add postgres --env DATABASE_URI=postgresql://readonly_user:pass@localhost:5432/app_dev \
  -- uvx postgres-mcp --access-mode=restricted
```

`restricted` ограничивает работу читающими транзакциями и лимитирует время выполнения; `unrestricted` разрешает полное чтение и запись. Используйте restricted и в любом случае подключайтесь пользователем базы, у которого есть только права на `SELECT`. Два замка лучше одного, тем более что проект предупреждает: небезопасные языки хранимых процедур могут обойти его проверки.

**Supabase** держит облачный сервер по адресу `https://mcp.supabase.com/mcp`. Добавьте `?project_ref=<id>&read_only=true`, чтобы привязать его к одному проекту и выполнять все запросы от имени Postgres-пользователя только на чтение. Сам Supabase советует использовать его на данных для разработки, не отключать ручное подтверждение вызовов инструментов и не отдавать его конечным пользователям.

Заметка: старый эталонный Postgres-сервер проекта MCP переведён в архив. Выбирайте поддерживаемый.

## 7. Git, Fetch и Filesystem: эталонные серверы

Проект MCP по-прежнему поддерживает несколько эталонных серверов. Они удобны, но сначала проверьте, нужны ли они вашему агенту.

- **Git** (`uvx mcp-server-git --repository /path/to/repo`): инструменты log, diff, blame и commit. Агенты программирования и так запускают `git` в терминале, так что пользы больше всего в клиентах без доступа к оболочке или когда вы хотите, чтобы git-операции были явными вызовами инструментов.
- **Fetch** (`uvx mcp-server-fetch`): превращает веб-страницу в Markdown для модели. Пригодится, чтобы прочитать справочник по API, которого нет в Context7. Каждая загруженная страница — недоверенные данные, так что предупреждение о prompt injection действует в полной мере.
- **Filesystem** (`npx -y @modelcontextprotocol/server-filesystem /path/one /path/two`): доступ к файлам только в перечисленных каталогах. Claude Code и Codex и так правят файлы проекта; используйте этот сервер, чтобы открыть одну дополнительную папку, например общий каталог дизайн-токенов, не открывая весь домашний каталог.

## Что ещё стоит знать

В зависимости от стека место в списке могут заслужить: **Linear** или **Notion** для задач и спецификаций, **Stripe** для платёжных объектов в тестовом режиме, **Figma** для чтения макетов, документация **Cloudflare** и мобильные серверы для симуляторов. Применяйте те же три проверки. Сервер, добавленный «на всякий случай», в основном добавляет контекст.

## Как добавить серверы в Claude Code, Codex и Gemini CLI

Один и тот же сервер работает во всех трёх; различается регистрация.

**Claude Code.** Опции идут перед именем, команда сервера — после `--`:

```bash
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
claude mcp add --scope project playwright -- npx @playwright/mcp@latest
claude mcp list
```

`--scope local` (по умолчанию) сохраняет сервер только для вас в этом проекте, `--scope user` — для всех ваших проектов, а `--scope project` пишет `.mcp.json` в репозиторий для всей команды. `.mcp.json` поддерживает подстановку `${VAR}`, так что файл можно коммитить без токенов. Чтобы войти в OAuth-серверы, выполните `/mcp` внутри сессии.

**Codex.** Используйте CLI или правьте `~/.codex/config.toml`:

```toml
[mcp_servers.github]
url = "https://api.githubcopilot.com/mcp/readonly"
bearer_token_env_var = "GITHUB_PAT"

[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]
enabled_tools = ["browser_navigate", "browser_snapshot", "browser_click", "browser_take_screenshot"]
```

`bearer_token_env_var` берёт токен из переменной окружения, а не из файла, а `enabled_tools` / `disabled_tools` урезают сервер до нужных инструментов. Для OAuth-серверов есть `codex mcp login <name>`.

**Gemini CLI.** `gemini mcp add` пишет в `.gemini/settings.json` (проект, по умолчанию) или в `~/.gemini/settings.json` с `--scope user`:

```bash
gemini mcp add --transport http github https://api.githubcopilot.com/mcp/readonly \
  --header "Authorization: Bearer $GITHUB_PAT"
```

В `settings.json` инструменты ограничивают `includeTools` и `excludeTools`, а `trust: true` отключает запросы подтверждения. Для всего, что пишет, `trust` не включайте. Учтите: если передать токен в `--header`, как выше, он окажется в файле настроек; где можно, используйте ссылки `$VAR` в `env` и `headers`.

## Безопасность: коротко, но серьёзно

MCP-серверы связывают модель с реальными системами. Короткий чек-лист:

- **Наименьшие привилегии по умолчанию.** Режимы только для чтения, узкие наборы инструментов, один проект на сервер, fine-grained токены. Давайте право записи одному агенту под одну задачу, а не всем агентам навсегда.
- **Данные для разработки, а не продакшен.** Направляйте серверы баз данных на локальную копию или staging. Если агенту всё же нужно заглянуть в продакшен — пользователь только на чтение и короткая сессия.
- **Секреты не в открытом тексте.** Переменные окружения, ссылки `${VAR}` или связка ключей ОС. Токен в закоммиченном `.mcp.json` — это утёкший токен.
- **Всё, что возвращает сервер, — недоверенные данные.** Веб-страницы, комментарии к задачам, строки базы и сообщения об ошибках могут содержать инструкции, адресованные агенту. Не отключайте подтверждения для инструментов, которые пишут или запускают команды.
- **Знайте, что запускаете.** stdio-сервер — это код, который работает на вашей машине с вашими правами. Ставьте из официального репозитория, фиксируйте версии для всего чувствительного и не копируйте команды установки из случайных README.
- **Посмотрите список инструментов.** Прежде чем отдать сервер агенту, выведите его инструменты и уберите лишние.

Общая картина — в статье [безопасность ИИ-агентов для программирования](/ru/blog/ai-coding-agent-security/).

## Какие серверы каким агентам

Если у вас несколько агентов, раздавайте серверы по ролям:

| Агент | Серверы |
| --- | --- |
| Фронтенд | Playwright или Chrome DevTools, Context7, Figma |
| Бэкенд | Context7, Postgres или Supabase только на чтение |
| Исправление багов | Sentry, GitHub (задачи и Actions), Playwright |
| Ревьюер | GitHub только на чтение |

Так контекст каждого агента остаётся компактным, а ошибка или внедрённая инструкция дотягивается до меньшего. И [расход токенов](/ru/blog/claude-code-token-usage/) тоже ниже.

## Как я делаю это в AgentVera

Регистрировать одни и те же серверы трижды в трёх форматах быстро надоедает. В AgentVera я держу их в одном месте:

- **Один список для всех CLI.** [Менеджер MCP](/ru/features/mcp-manager/) хранит серверы и подключает их при запуске агента: Claude Code, Codex, Gemini CLI, Copilot, Cursor, opencode и другие CLI с поддержкой MCP. Каждый сервер я отдаю всем агентам, выбранным агентам, группе или роли в команде и ограничиваю нужными проектами.
- **Каталог и проверка стоимости.** В каталоге есть готовые записи для Playwright, Chrome DevTools, Context7, GitHub, Sentry, Supabase, Git, Fetch, Filesystem и других. Проверка подключения показывает инструменты сервера с примерной стоимостью в токенах для каждого, так что видно, что он добавляет к каждому ходу.
- **Секреты в связке ключей.** Переменные окружения и токены из заголовков хранятся в связке ключей операционной системы, а удалённые серверы работают через шлюз AgentVera, так что в конфиге CLI токена нет.
- **Браузер, за которым можно следить.** [Браузер агента](/ru/features/agent-browser/) даёт агентам управляемый Chrome через Playwright MCP, и я вижу вкладки вживую.
- **Доступ к базе по правилам.** Вместо голой строки подключения [менеджер баз данных](/ru/features/database-manager/) позволяет агентам выполнять запросы к подключению через собственный инструмент: по умолчанию только чтение, каждый запрос записывается в лог. [DB Guard](/ru/features/db-guard/) проверяет миграции, которые пишет агент.
- **Подтверждения.** Для агентов Claude Code [автоподтверждение](/ru/features/auto-approval/) отвечает только на запросы, заведомо безопасные; всё остальное по-прежнему приходит ко мне.

## Итоги

Лучший набор MCP для программирования небольшой: браузер, актуальная документация, трекер задач и мониторинг ошибок, плюс база данных только на чтение, когда этого требует задача. Добавляйте серверы под агента и под проект, сужайте каждый режимом только для чтения или наборами инструментов, не храните токены в открытых файлах и считайте всё, что возвращает сервер, недоверенным. Если хотите управлять серверами для нескольких агентов в одном месте, [скачайте AgentVera бесплатно](/ru/download/) и откройте страницу MCP.

## Частые вопросы

**Какие MCP-серверы лучше всего подходят для программирования?** Для большинства проектов: Playwright или Chrome DevTools, чтобы видеть запущенное приложение, Context7 для актуальной документации библиотек, GitHub для задач и pull request, Sentry для ошибок в продакшене и сервер базы данных только на чтение. Остальные добавляйте, когда они нужны задаче.

**Сколько MCP-серверов подключать к одному агенту?** Столько, сколько нужно задаче, и не больше. Описания инструментов каждого сервера отправляются на каждом ходу, так что десять серверов с множеством инструментов съедают контекст, даже когда не используются. Три–пять узких серверов на агента — разумная отправная точка.

**Безопасно ли давать агенту доступ к базе данных через MCP?** На копии для разработки или staging, с пользователем только на чтение или в режиме сервера, допускающем лишь читающие транзакции, — да. Не подключайте агента к продакшену с правом записи и помните, что в данных базы может оказаться текст, который пытается управлять агентом.

**Нужен ли filesystem MCP-сервер для Claude Code или Codex?** Обычно нет. Агенты программирования и так читают и правят файлы в папке проекта. Filesystem-сервер полезен клиентам без доступа к файлам или когда нужно контролируемо открыть одну дополнительную папку вне проекта.

**Можно ли использовать одни и те же MCP-серверы в Claude Code, Codex и Gemini CLI?** Да. MCP — открытый протокол, и одна и та же stdio-команда или HTTP-адрес работает во всех трёх. Отличается только способ регистрации: claude mcp add, codex mcp add или config.toml, gemini mcp add или settings.json.

---

**Об AgentVera.** AgentVera — настольное приложение для macOS, Windows и Linux от Solviera Teknoloji. Оно запускает 18 ИИ-агентов для программирования (Claude Code, Codex, Gemini CLI, Copilot, Cursor, Antigravity, opencode, Hermes, Qwen Code, Kimi Code, Kiro, Amp, Droid, Goose, Vibe, Crush, Aider, Cline) рядом, по проектам, в настоящих терминалах с собственными установками CLI и входами пользователя. В бесплатном тарифе количество агентов не ограничено. Скачать: https://agentvera.dev/ru/download/ · Цены: https://agentvera.dev/ru/pricing/
