Model Context Protocol (MCP)
Узнайте, как настроить MCP с Claude Code.
Model Context Protocol (MCP) — это открытый протокол, который позволяет LLM получать доступ к внешним инструментам и источникам данных. Для получения более подробной информации о MCP см. документацию MCP.
Используйте сторонние MCP серверы на свой страх и риск. Убедитесь, что вы доверяете MCP серверам, и будьте особенно осторожны при использовании MCP серверов, которые взаимодействуют с интернетом, поскольку они могут подвергнуть вас риску инъекции промптов.
Настройка MCP серверов
Добавить MCP stdio сервер
Добавить MCP SSE сервер
Добавить MCP HTTP сервер
Управление вашими MCP серверами
Советы:
- Используйте флаг
-s
или--scope
для указания места хранения конфигурации:local
(по умолчанию): Доступен только вам в текущем проекте (называлсяproject
в старых версиях)project
: Общий доступ для всех в проекте через файл.mcp.json
user
: Доступен вам во всех проектах (называлсяglobal
в старых версиях)
- Устанавливайте переменные окружения с флагами
-e
или--env
(например,-e KEY=value
) - Настройте тайм-аут запуска MCP сервера, используя переменную окружения MCP_TIMEOUT (например,
MCP_TIMEOUT=10000 claude
устанавливает тайм-аут в 10 секунд) - Проверяйте статус MCP сервера в любое время, используя команду
/mcp
в Claude Code - MCP следует архитектуре клиент-сервер, где Claude Code (клиент) может подключаться к нескольким специализированным серверам
- Claude Code поддерживает SSE (Server-Sent Events) и потоковые HTTP серверы для связи в реальном времени
- Используйте
/mcp
для аутентификации с удаленными серверами, которые требуют OAuth 2.0 аутентификацию
Понимание областей действия MCP серверов
MCP серверы могут быть настроены на трех различных уровнях области действия, каждый из которых служит определенным целям для управления доступностью и совместным использованием серверов. Понимание этих областей поможет вам определить лучший способ настройки серверов для ваших конкретных потребностей.
Иерархия областей и приоритет
Конфигурации MCP серверов следуют четкой иерархии приоритетов. Когда серверы с одинаковыми именами существуют на нескольких уровнях, система разрешает конфликты, отдавая приоритет сначала серверам локальной области, затем серверам области проекта и, наконец, серверам пользовательской области. Такой дизайн гарантирует, что личные конфигурации могут переопределять общие при необходимости.
Локальная область
Серверы локальной области представляют уровень конфигурации по умолчанию и хранятся в ваших пользовательских настройках, специфичных для проекта. Эти серверы остаются приватными для вас и доступны только при работе в текущем каталоге проекта. Эта область идеальна для личных серверов разработки, экспериментальных конфигураций или серверов, содержащих конфиденциальные учетные данные, которые не должны быть общими.
Область проекта
Серверы области проекта обеспечивают командное сотрудничество, сохраняя конфигурации в файле .mcp.json
в корневом каталоге вашего проекта. Этот файл предназначен для включения в систему контроля версий, обеспечивая всем членам команды доступ к одним и тем же MCP инструментам и сервисам. Когда вы добавляете сервер области проекта, Claude Code автоматически создает или обновляет этот файл с соответствующей структурой конфигурации.
Результирующий файл .mcp.json
следует стандартизированному формату:
По соображениям безопасности Claude Code запрашивает одобрение перед использованием серверов области проекта из файлов .mcp.json
. Если вам нужно сбросить эти варианты одобрения, используйте команду claude mcp reset-project-choices
.
Пользовательская область
Серверы пользовательской области обеспечивают доступность между проектами, делая их доступными во всех проектах на вашей машине, оставаясь при этом приватными для вашей учетной записи пользователя. Эта область хорошо работает для личных утилитарных серверов, инструментов разработки или сервисов, которые вы часто используете в разных проектах.
Выбор правильной области
Выбирайте область на основе:
- Локальная область: Личные серверы, экспериментальные конфигурации или конфиденциальные учетные данные, специфичные для одного проекта
- Область проекта: Серверы, общие для команды, инструменты, специфичные для проекта, или сервисы, необходимые для сотрудничества
- Пользовательская область: Личные утилиты, необходимые в нескольких проектах, инструменты разработки или часто используемые сервисы
Аутентификация с удаленными MCP серверами
Многие удаленные MCP серверы требуют аутентификации. Claude Code поддерживает поток аутентификации OAuth 2.0 для безопасного подключения к этим серверам.
Добавить удаленный сервер, требующий аутентификации
Аутентификация с использованием команды /mcp
В Claude Code используйте команду /mcp
для управления аутентификацией:
Это открывает интерактивное меню, где вы можете:
- Просматривать статус подключения для всех серверов
- Аутентифицироваться с серверами, требующими OAuth
- Очищать существующую аутентификацию
- Просматривать возможности сервера
Завершить поток OAuth
Когда вы выбираете “Аутентифицировать” для сервера:
- Ваш браузер автоматически открывается к провайдеру OAuth
- Завершите аутентификацию в вашем браузере
- Claude Code получает и безопасно сохраняет токен доступа
- Подключение к серверу становится активным
Советы:
- Токены аутентификации хранятся безопасно и обновляются автоматически
- Используйте “Очистить аутентификацию” в меню
/mcp
для отзыва доступа - Если ваш браузер не открывается автоматически, скопируйте предоставленный URL
- OAuth аутентификация работает как с SSE, так и с HTTP транспортами
Подключение к Postgres MCP серверу
Предположим, вы хотите предоставить Claude доступ только для чтения к базе данных PostgreSQL для запросов и инспекции схемы.
Добавить Postgres MCP сервер
Запросить вашу базу данных с Claude
Советы:
- Postgres MCP сервер предоставляет доступ только для чтения для безопасности
- Claude может помочь вам исследовать структуру базы данных и выполнять аналитические запросы
- Вы можете использовать это для быстрого понимания схем баз данных в незнакомых проектах
- Убедитесь, что ваша строка подключения использует соответствующие учетные данные с минимально необходимыми разрешениями
Добавление MCP серверов из JSON конфигурации
Предположим, у вас есть JSON конфигурация для одного MCP сервера, который вы хотите добавить в Claude Code.
Добавить MCP сервер из JSON
Проверить, что сервер был добавлен
Советы:
- Убедитесь, что JSON правильно экранирован в вашей оболочке
- JSON должен соответствовать схеме конфигурации MCP сервера
- Вы можете использовать
-s global
для добавления сервера в вашу глобальную конфигурацию вместо специфичной для проекта
Импорт MCP серверов из Claude Desktop
Предположим, вы уже настроили MCP серверы в Claude Desktop и хотите использовать те же серверы в Claude Code без ручной перенастройки.
Импортировать серверы из Claude Desktop
Выбрать, какие серверы импортировать
После выполнения команды вы увидите интерактивный диалог, который позволяет выбрать, какие серверы вы хотите импортировать.
Проверить, что серверы были импортированы
Советы:
- Эта функция работает только на macOS и Windows Subsystem for Linux (WSL)
- Она читает файл конфигурации Claude Desktop из его стандартного расположения на этих платформах
- Используйте флаг
-s global
для добавления серверов в вашу глобальную конфигурацию - Импортированные серверы будут иметь те же имена, что и в Claude Desktop
- Если серверы с теми же именами уже существуют, они получат числовой суффикс (например,
server_1
)
Использование Claude Code как MCP сервера
Предположим, вы хотите использовать Claude Code как MCP сервер, к которому могут подключаться другие приложения, предоставляя им инструменты и возможности Claude.
Запустить Claude как MCP сервер
Подключиться из другого приложения
Вы можете подключиться к MCP серверу Claude Code из любого MCP клиента, такого как Claude Desktop. Если вы используете Claude Desktop, вы можете добавить MCP сервер Claude Code, используя эту конфигурацию:
Советы:
- Сервер предоставляет доступ к инструментам Claude, таким как View, Edit, LS и т.д.
- В Claude Desktop попробуйте попросить Claude прочитать файлы в каталоге, внести изменения и многое другое.
- Обратите внимание, что этот MCP сервер просто предоставляет инструменты Claude Code вашему MCP клиенту, поэтому ваш собственный клиент отвечает за реализацию подтверждения пользователя для отдельных вызовов инструментов.
Использование MCP ресурсов
MCP серверы могут предоставлять ресурсы, на которые вы можете ссылаться, используя @ упоминания, аналогично тому, как вы ссылаетесь на файлы.
Ссылка на MCP ресурсы
Список доступных ресурсов
Введите @
в вашем промпте, чтобы увидеть доступные ресурсы от всех подключенных MCP серверов. Ресурсы появляются вместе с файлами в меню автозаполнения.
Ссылка на конкретный ресурс
Используйте формат @server:protocol://resource/path
для ссылки на ресурс:
Множественные ссылки на ресурсы
Вы можете ссылаться на несколько ресурсов в одном промпте:
Советы:
- Ресурсы автоматически извлекаются и включаются как вложения при ссылке на них
- Пути ресурсов доступны для нечеткого поиска в автозаполнении @ упоминаний
- Claude Code автоматически предоставляет инструменты для перечисления и чтения MCP ресурсов, когда серверы их поддерживают
- Ресурсы могут содержать любой тип контента, который предоставляет MCP сервер (текст, JSON, структурированные данные и т.д.)
Использование MCP промптов как слэш-команд
MCP серверы могут предоставлять промпты, которые становятся доступными как слэш-команды в Claude Code.
Выполнение MCP промптов
Обнаружение доступных промптов
Введите /
, чтобы увидеть все доступные команды, включая те, что от MCP серверов. MCP промпты появляются в формате /mcp__servername__promptname
.
Выполнить промпт без аргументов
Выполнить промпт с аргументами
Многие промпты принимают аргументы. Передавайте их через пробел после команды:
Советы:
- MCP промпты динамически обнаруживаются от подключенных серверов
- Аргументы разбираются на основе определенных параметров промпта
- Результаты промптов вставляются непосредственно в разговор
- Имена серверов и промптов нормализуются (пробелы становятся подчеркиваниями)