Что такое MCP и зачем он Claude Code?
Представь задачу: найти issue, проверить мониторинг, прочитать данные из базы или открыть страницу в браузере. Сам Claude Code работает с файлами и командами в текущем окружении. Но внешний сервис живёт отдельно. Между ними появляется понятный канал связи MCP.
MCP - это открытый стандарт, который создаёт безопасные двусторонние соединения между источниками данных и инструментами на базе ИИ.
У MCP две стороны:
- внешний источник или сервис;
- AI-приложение, в данном случае Claude Code.
Сервер MCP может работать без отдельного удалённого компьютера. Он запускается локально как процесс на твоём компьютере. Такой вариант подходит для файлов, локального Git-репозитория или скрипта. Удалённый сервер подключается по HTTP и работает как внешний сервис.
Самая полезная граница простая. Если Claude Code уже умеет выполнить задачу через файлы, shell-команду или CLI, MCP не обязателен. Если нужная система живёт отдельно и удобного CLI нет, MCP становится удобным способом дать к ней доступ.
Что Claude Code получает после подключения MCP?
Важно различать данные и действия.
Данные - это то, что Claude может прочитать:
- записи из базы;
- результаты мониторинга;
- содержимое веб-страницы;
- задачи из трекера;
- сведения из внешнего API.
Действия - это то, что Claude может сделать:
- найти issue;
- создать черновик;
- изменить запись;
- проверить ошибку;
- запустить рабочий процесс;
- передать данные во внешний сервис.
Документация Claude Code перечисляет такие сценарии:
С подключёнными MCP-серверами можно попросить Claude Code реализовать фичи из трекера задач, проанализировать данные мониторинга, выполнить запрос к базе данных, интегрировать дизайн-макеты и автоматизировать рабочие процессы.
Например, Filesystem даёт доступ к указанной папке. Memory хранит локальный граф сущностей и связей. Браузерный сервер открывает страницы и возвращает результаты. Сервер конкретного SaaS может дать сразу поиск, чтение, создание и изменение объектов.
После подключения у Claude Code появляется выбор. Модель смотрит на задачу и доступные инструменты. Поэтому подключённый сервер не означает, что каждый его инструмент будет вызван. Если задачу можно решить встроенным Grep, Claude может выбрать встроенный Grep и обойтись без MCP.
Я для первого теста беру сервер с результатом, который легко проверить глазами. Прочитать файл, записать факт в Memory или показать список доступных инструментов проще, чем сразу подключать рабочую базу.
Как связаны MCP client, MCP server и Claude Code?
Три роли можно держать в голове так:
- Claude Code - приложение, где ты пишешь запрос;
- MCP client - встроенная часть Claude Code, которая держит соединение;
- MCP server - прослойка, которая предоставляет инструменты;
- внешняя система - файлы, база, API, браузер или рабочий сервис.
Ты пишешь: «Найди открытые issues». Claude Code понимает задачу и выбирает доступный инструмент. Клиент отправляет вызов MCP-серверу. Сервер обращается к GitHub или другой системе. Результат возвращается в Claude Code, а затем модель формирует ответ.
Тебе не нужно разбирать внутреннюю реализацию протокола для первого подключения. Достаточно отличать место запроса от места действия. Запрос пишется в Claude Code. Действие выполняется через сервер.
Локальный сервер запускается как процесс на компьютере. Удалённый сервер доступен по URL. Для Claude Code это разные способы добраться до одного результата: получить инструмент и вызвать его.
Чем MCP отличается от API?
Я проверял оба подхода. API - это прямой путь к конкретному сервису. Чтобы получить список задач, приложение отправляет заранее известный запрос. При создании задачи оно отправляет другой запрос. Логику этих вызовов кто-то должен прописать заранее.
MCP добавляет слой, который делает инструменты видимыми для AI-приложения. Claude Code получает их описания и выбирает нужное действие по тексту задачи.
В традиционном API разработчик должен заранее предусмотреть каждое действие, которое когда-либо понадобится интеграции, и создать его заранее. С MCP AI сам решает, что делать, исходя из твоего запроса.
MCP не заменяет API внутри сервиса. Часто MCP-сервер сам обращается к API. Разница в уровне подключения:
- API даёт прямой программный доступ;
- MCP упаковывает доступные действия в формат, с которым работает AI-приложение.
Если нужен один точный вызов по фиксированному сценарию, прямой API может быть проще. Если нужно дать Claude Code набор действий во внешнем сервисе, MCP удобнее.
Есть и ограничение. Модель выбирает инструмент не идеально и не всегда. MCP не превращает задачу в гарантированную автоматизацию. Для обязательного действия нужны отдельные ограничения или hook.
Что выбрать новичку: MCP, API или встроенный инструмент?

| Ситуация | Что выбрать | Причина |
|---|---|---|
| Прочитать и изменить файлы проекта | Встроенный инструмент | Claude Code уже работает с файлами |
| Запустить команду или скрипт | Bash или CLI | MCP добавит лишний слой |
| Выполнить один фиксированный запрос | API | Логику проще задать заранее |
| Дать Claude доступ к SaaS | MCP | Нужны действия и данные внешнего сервиса |
| Работать с базой данных | MCP, если есть готовый сервер | Модель получает набор запросов и действий |
| Управлять браузером | Локальный MCP | Claude Code запускает сервер на компьютере |
| Использовать несколько действий во внешней системе | MCP | Модель может выбирать инструмент по задаче |
| Запускать действие строго на событие | Hook | MCP сам не гарантирует вызов |
Правило из документации Anthropic звучит ещё короче:
MCP-серверы нужны, чтобы Claude подключался к внутренним инструментам, источникам данных и API, к которым иначе не может получить доступ.
Я бы не подключал MCP ради самого факта подключения. Чтение файла обходится без него. Для одного запроса к сервису API может оказаться прямее. MCP оправдан, когда Claude должен работать с внешней системой в формате помощника: искать, проверять, сравнивать и выполнять несколько связанных действий.
Если не знаешь, с чего начать, выбери локальный Filesystem. Он даёт понятный результат и ограничивает доступ одной папкой.
MCP полезен не только как настройка инструмента. На практикуме я показываю, как задавать ИИ-агенту границы, проверять реальные действия и не отдавать ему весь проект одним непрозрачным запросом. Практика здесь важнее определения протокола:
Практикум «Старт»
Три дня живой практики: от идеи до работающего проекта по ссылке
2 000 ₽старт 5 августа, 18:00 МСК
Какие MCP-серверы подходят для первого теста?
Filesystem
Filesystem - самый понятный старт. Сервер получает путь к разрешённой папке. Доступ ко всему компьютеру ему не предоставляется.
mkdir -p mcp-demo
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo"Создай файл и запусти Claude Code:
echo "MCP works" > mcp-demo/test.txt
claudeПроверочный запрос:
Прочитай mcp-demo/test.txt и скажи, что в нём написано.Официальная коллекция MCP-серверов показывает тот же принцип: путь к разрешённой папке передаётся серверу аргументом. GitHub - Model Context Protocol Servers
Everything
Everything нужен для проверки самого подключения:
claude mcp add everything -- npx -y @modelcontextprotocol/server-everythingПосле запуска попроси:
Покажи, какие инструменты и ресурсы доступны через сервер everything.Репозиторий прямо называет Everything тестовым сервером, который служит для проверки. README Everything
Memory
Memory хранит локальный граф сущностей и связей:
claude mcp add memory -- npx -y @modelcontextprotocol/server-memoryПроверка:
Запомни: в этом проекте цвет кнопок должен быть оранжевым.В новом запросе:
Какой цвет кнопок используется в этом проекте?Для GitHub нужен Personal Access Token. Google Workspace требует Google Cloud и OAuth. PostgreSQL требует уже работающую базу, поэтому эти варианты подойдут для следующего этапа.
Что нужно установить перед подключением MCP?
Перед локальным подключением проверь команды:
node --version
npx --version
claude --versionFilesystem запускается через npx, поэтому без Node.js команда не сработает. Git-сервер использует локальный репозиторий и uvx. Если выбранный сервер требует отдельную базу, браузер или аккаунт, одной установки Claude Code недостаточно.
Проверь текущую папку:
pwd
lsДля Filesystem папка может быть создана прямо перед тестом:
mkdir -p mcp-demoFetch требует интернет, потому что получает страницу по URL. Для первого запроса бери публичную страницу. Подключать внутренние панели и локальные адреса к первому эксперименту не стоит.
Если Node.js установлен через NVM, Claude Code может увидеть другой PATH, чем терминал. Тогда node или npx не найдутся. Проверь путь:
which node
which npxПри нестабильном окружении используй абсолютный путь к исполняемому файлу.
Как подключить MCP к Claude Code шаг за шагом?

Создай отдельную папку теста.
Так результат не смешается с рабочими файлами.
bashmkdir -p mcp-demo echo "MCP works" > mcp-demo/test.txtПапка нужна и для проверки доступа Filesystem, и для понимания текущего проекта.
Добавь локальный сервер Filesystem.
Команда передаёт серверу только разрешённую папку.
bashclaude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo"--отделяет параметры Claude Code от команды, которая запускает MCP-сервер.Проверь список серверов.
Сначала смотри состояние вне интерактивной сессии.
bashclaude mcp listНужный результат:
✔ ConnectedДругие статусы тоже полезны.
Needs authenticationозначает, что сервер доступен, но ждёт входа или токен.Failed to connectозначает, что сервер не ответил.Pending approvalозначает, что проектный сервер ещё не одобрен.Запусти Claude Code заново.
Полный перезапуск нужен после изменения
.mcp.jsonили конфигурации проекта.bashclaudeЕсли Claude Code уже был открыт во время добавления сервера, закрой текущую сессию и запусти её снова.
Открой список MCP внутри сессии.
Эта команда показывает настроенные серверы, статус соединения и одобрение проекта.
/mcpУбедись, что
filesystemвиден в списке. Если сервер проектный, здесь может появиться действие для одобрения.Попроси использовать нужный сервер.
Не проверяй MCP вопросом, который Claude легко решит встроенным инструментом.
Проверка Filesystem MCPИспользуй filesystem MCP. Прочитай файл mcp-demo/test.txt через этот сервер. Не используй встроенный Glob или чтение файла напрямую. Скажи точный текст файла.
В ответе должен появиться реальный вызов инструмента Filesystem и текст
MCP works.Добавь удалённый сервер отдельно.
Для HTTP-сервера не нужен локальный процесс, но нужен URL.
bashclaude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcpЗатем проверь список:
bashclaude mcp listОткрой удалённый сервер через `/mcp`.
Если сервер требует вход, выбери его и выполни Authenticate.
/mcpПосле OAuth попроси Claude обратиться именно к этому серверу:
Используй сервер claude-code-docs и найди, что делает переменная MCP_TIMEOUT.Проверь локальный процесс напрямую.
Если статус подключения не появляется, запусти команду сервера отдельно.
bashnpx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo"Для stdio-сервера такой запуск помогает увидеть ошибку
npx, Node.js, пути или обязательной переменной окружения.Зафиксируй рабочую команду.
После успешного теста запиши имя сервера, scope и способ запуска в заметку проекта.
filesystem local npx -y @modelcontextprotocol/server-filesystemНе добавляй рабочие токены в такую заметку. Секреты храни через переменные окружения, OAuth или заголовки.
Где хранится настройка MCP и какой scope выбрать?
| Scope | Где хранится | Область действия |
|---|---|---|
local | ~/.claude.json в записи текущего проекта | Только ты и текущий проект |
user | ~/.claude.json в секции mcpServers | Только ты и все проекты |
project | .mcp.json в корне проекта | Все, кто клонирует проект |
Локальный тест:
claude mcp add --scope local filesystem -- npx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo"Подключение для всех личных проектов:
claude mcp add --scope user memory -- npx -y @modelcontextprotocol/server-memoryКомандная конфигурация:
claude mcp add --scope project filesystem -- npx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo"Проектный сервер лежит в .mcp.json. Не клади его в .claude/settings.json: это другой файл и другая настройка.
Перед коммитом проверь .mcp.json. Имя сервера, команда и путь могут быть общими, но секреты не должны попадать в репозиторий.
Сколько инструментов подключать, чтобы не раздувать контекст?
Anthropic описывает агентов с сотнями и тысячами инструментов через десятки MCP-серверов. Такой масштаб возможен, но он не бесплатен для контекста.
В одном примере загрузка определений инструментов снизилась со 150 000 до 2 000 токенов после выборочной загрузки.
Большой набор создаёт две проблемы:
- модель получает больше схем, среди которых нужно выбирать;
- результаты вызовов занимают место рядом с кодом и инструкциями.
Для первого месяца я бы держал рядом один-два сервера. Не потому, что есть официальная безопасная цифра. Такой предел помогает понять, какой инструмент реально сработал и где возникла ошибка.
Если работаешь с файлами, не добавляй одновременно браузер, GitHub, базу и несколько серверов памяти без задачи. Сначала проверь один сценарий. Потом добавляй следующий сервер и снова проверяй список инструментов.
Практикум «Старт»
Три дня живой практики: от идеи до работающего проекта по ссылке
2 000 ₽старт 5 августа, 18:00 МСК
Почему MCP подключён, но Claude его не использует?

Симптом выглядит обманчиво: статус Connected есть, но в ответе нет вызова MCP.
Причина может быть нормальной. Claude видит задачу и выбирает встроенный способ. Для поиска по файлам Grep часто проще, чем внешний сервер.
Проверяй в два этапа:
- Открой
/mcpи убедись, что сервер подключён. - Отправь запрос, где MCP нужен явно.
Используй filesystem MCP. Прочитай mcp-demo/test.txt именно через инструмент filesystem. Не используй встроенный Grep, Glob, Bash или прямое чтение файла. Покажи результат вызова и точный текст файла.
Если инструмент должен вызываться всегда при событии, MCP сам по себе не даёт такой гарантии. Для обязательного вызова в фактуре указан hook с типом mcp_tool.
Claude Code в основном игнорировал его. Ошибки не было, неудачного вызова тоже. Он просто использовал grep. Иногда вызывал инструмент, обычно нет.
Не считай отсутствие вызова доказательством поломки. Сначала проверь, действительно ли запрос требовал именно MCP.
Что делать, если MCP не появляется или не подключается?
Иди по порядку:
- Проверь текущий проект:
pwd
ls -laclaude mcp add мог быть выполнен в другой папке. Проектный сервер привязан к текущему проекту.
- Загляни в файл:
ls -la .mcp.jsonПроектная конфигурация должна лежать в корне проекта. Не ищи её в .claude/settings.json.
- Перезапусти сессию:
exit
claudeClaude Code читает .mcp.json при запуске сессии. Изменение файла в уже открытом процессе не обязано появиться сразу.
- Проверь удалённый URL:
claude mcp listСтатус Failed to connect говорит о том, что сервер или URL не ответил. Needs authentication указывает на необходимость авторизации.
- Запусти локальную команду напрямую:
npx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo"Так ошибка становится видимой до уровня MCP. Команда может не найти Node.js, пакет или обязательную переменную.
- Проверь окружение:
which node
which npx
which uvx
echo "$PATH"При NVM приложение может получить другой PATH, чем терминал. В таком случае используй абсолютный путь к node или npx.
- Проверь наличие инструментов. Сервер может подключиться, но не зарегистрировать инструменты. Частая причина - отсутствующий API-ключ или другая обязательная переменная окружения.
Если после этого проектный сервер не виден в /mcp, не переноси конфигурацию случайно между Claude Code, Claude Desktop и расширением VS Code. Для расширения нет надёжного универсального исправления в фактуре, поэтому обещать конкретный workaround я не буду.
Как безопасно подключить MCP с OAuth или API-ключом?
Anthropic прямо разделяет листинг и аудит:
Anthropic проверяет коннекторы по критериям добавления в Directory, но не проводит security-аудит и не управляет каждым MCP-сервером.
mcp защита начинается с простых вопросов перед подключением. Проверь:
- источник сервера;
- документацию;
- список запрашиваемых действий;
- способ авторизации;
- куда могут уйти данные;
- какие изменения сервер способен выполнить.
Для OAuth порядок такой:
- зарегистрируй удалённый сервер;
- запусти Claude Code;
- открой
/mcp; - выбери сервер;
- пройди вход в браузере;
- вернись в Claude Code и проверь статус.
Регистрация ещё не означает, что вход выполнен. Сервер может отображаться как Needs authentication, пока ты не завершишь OAuth.
API-ключ не зашивай прямо в общий проектный файл. Документация предупреждает:
Любой пользователь на машине может прочитать этот файл, поэтому не храни API-ключи и другие учётные данные в блоках
env.
Для локального сервера переменную можно передать через команду:
claude mcp add my-service -e API_KEY="$API_KEY" -- npx -y example-mcp-serverДля общей конфигурации используй ${VAR}, OAuth или персональные заголовки. Не коммить ключ в .mcp.json.
Нужно ли новичку создавать собственный MCP-сервер?
Готовые подключения уже есть для разных сценариев. Anthropic направляет к Directory, где можно искать reviewed connectors, но сам каталог не заменяет проверку доверия.
Сначала попробуй:
- Filesystem для папки;
- Memory для локальных фактов;
- Git для локального репозитория;
- Everything для проверки протокола;
- готовый сервер нужного SaaS;
- удалённый сервер с OAuth, если сервис его поддерживает.
Собственный сервер не появляется из одного промпта без ограничений. Нужно решить, какие данные он открывает, какие действия разрешает и как хранит доступы. Это уже отдельная практическая задача.
Google Workspace показывает цену готовой интеграции: нужны Google Cloud и OAuth-настройки. PostgreSQL требует работающую базу. Если подходящего готового подключения нет, собственный сервер может оказаться оправдан. Но сначала зафиксируй, какой конкретно инструмент нужен, и проверь Directory.
Вопросы и ответы
Вопросы и ответы
Что такое mcp сервер?
MCP-сервер - это прослойка между Claude Code и внешней системой. Он открывает данные или действия, а Claude Code подключается к нему как клиент. Сервер может работать локально или удалённо.
Какие claude mcp servers подходят для первого теста?
Для первого теста подходят Filesystem, Everything и Memory. Filesystem работает с указанной папкой, Everything проверяет сам факт подключения, а Memory сохраняет локальные сущности и связи. Сервисы с OAuth, токеном или рабочей базой лучше подключать позже.
Как подключить mcp к Claude Code?
Для локального сервера используй команду вида claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem "$PWD/mcp-demo". Затем выполни claude mcp list, перезапусти Claude Code, открой /mcp и отправь запрос с явным названием сервера.
Что нужно установить перед подключением MCP?
Для Filesystem нужны Claude Code, Node.js и npx. Для Git нужен локальный Git-репозиторий и uvx. Fetch требует интернет. Удалённому HTTP-серверу локальная установка самого сервера не нужна, но могут потребоваться URL, токен или OAuth.
Где находится mcp config?
Локальная и пользовательская конфигурация хранится в ~/.claude.json. Проектная конфигурация хранится в .mcp.json в корне проекта. local действует в текущем проекте, user во всех личных проектах, project подходит для команды.
Как подключить mcp сервер с OAuth?
Сначала зарегистрируй удалённый сервер, запусти Claude Code и открой /mcp. Выбери сервер, выполни Authenticate и пройди вход в браузере. Добавление сервера и OAuth-вход являются разными этапами.
Что делать, если mcp не появляется?
Проверь текущую папку, наличие .mcp.json и полный перезапуск Claude Code. Затем выполни claude mcp list. Для локального сервера запусти команду напрямую и проверь npx, uvx, Node.js и PATH.
Нужно ли создавать mcp server самому?
Для первого-второго месяца обычно нет. Начни с готового сервера. Собственная разработка нужна, если подходящего подключения нет, а доступ к особой базе или внутреннему процессу требуется регулярно.
Источники
- Introducing the Model Context Protocol - Anthropic
- Connect Claude Code to tools via MCP
- Connect to MCP servers
- Debug your configuration
- Control MCP server access for your organization
- MCP vs. API: What's the difference?
- How Claude Code works in large codebases
- Model Context Protocol Servers
- Everything MCP server
- Memory MCP server
- Code execution with MCP
- If Claude Code ignores your MCP server
- MCP Servers Don't Work with NVM
- Claude Code For VS Code does not use MCP servers
Практикум «Старт»
Три дня живой практики: от идеи до работающего проекта по ссылке
2 000 ₽старт 5 августа, 18:00 МСК

