Протокол контекста модели (MCP) — это открытый стандарт, определяющий, как приложения используют контекст с большими языковыми моделями (LLM). Вы можете подключить MCP-серверы, интерфейс командной строки GitHub Copilot чтобы получить Copilot доступ к внешним инструментам, источникам данных и сервисам. Общие сведения о MCP см. в разделе О протоколе контекста модели (MCP).
Добавление сервера MCP
Примечание.
MCP-сервер встроен и GitHub уже доступен без дополнительной Второй пилот CLI конфигурации. Ниже приведены шаги для добавления других MCP-серверов.
Если ваша организация или предприятие настроили URL реестра и политику списка разрешений, эти настройки применимы к Второй пилот CLI. Настроенный URL реестра будет отображаться как источник обнаружения, и запускаться могут только серверы, разрешённые политикой списка разрешений.
Вы можете добавлять MCP-серверы следующим образом:
- Использование
/mcp addкоманды - Использование
copilot mcp addподкоманды - Редактирование конфигурационного файла
- Добавление серверов MCP для каждого репозитория
- Поиск и установка из реестра (экспериментальный)
Инструкции по установке, доступные инструменты и URL-адреса для конкретных серверов MCP см. GitHub Реестр MCP.
Использование /mcp add команды
-
В интерактивном режиме введите
/mcp add. Отображается форма конфигурации. Используйте вкладку для навигации между полями. -
Рядом с именем сервера введите уникальное имя для MCP-сервера. Это имя, которое вы будете использовать для обозначения сервера.
-
Рядом с типом сервера выберите тип, нажав соответствующее число. Доступны следующие типы:
- Локальный или STDIO: запускает локальный процесс и общается по стандартному входу/выводу (
stdin/stdout). Оба варианта работают одинаково. STDIO — это стандартное название протокола MCP, поэтому выберите его, если хотите, чтобы ваша конфигурация была совместима с VS Code, и Copilot облачный агентдругими MCP-клиентами. - HTTP или SSE: подключается к удалённому MCP-серверу. HTTP использует потоковый HTTP-транспорт. SSE использует устаревший HTTP с транспортом Server-Sent Events, который устарел в спецификации MCP, но всё ещё поддерживается для обратной совместимости.
- Локальный или STDIO: запускает локальный процесс и общается по стандартному входу/выводу (
-
Оставшиеся поля зависят от выбранного типа сервера:
-
Если вы выбрали локальную или STDIO:
- Рядом с командой введите команду для запуска сервера, включая любые аргументы. Например:
npx @playwright/mcp@latest. Это соответствует свойствам иcommand``argsв конфигурационном файле JSON. - Рядом с переменными среды, по желанию, указывайте переменные среды, необходимые серверу, такие как ключи API или токёны, в виде пар ключ-значение JSON. Например:
{"API_KEY": "YOUR-API-KEY"}. ПеременнаяPATHавтоматически наследуется от вашей среды. Все остальные переменные среды должны быть настроены здесь.
- Рядом с командой введите команду для запуска сервера, включая любые аргументы. Например:
-
Если вы выбрали HTTP или SSE:
- Рядом с URL вставьте URL удалённого сервера. Например:
https://mcp.context7.com/mcp. - Рядом с HTTP-заголовками, по желанию, указывайте HTTP-заголовки как JSON. Например:
{"CONTEXT7_API_KEY": "YOUR-API-KEY"}.
- Рядом с URL вставьте URL удалённого сервера. Например:
-
-
Рядом с разделом «Инструменты» укажите, какие инструменты с сервера должны быть доступны. Введите
*, чтобы включить все инструменты, или предоставить список имён инструментов с разделёнными запятой (кавычки не требуются). Значение по умолчанию —*. -
Нажмите Ctrl+S , чтобы сохранить конфигурацию. MCP-сервер добавляется и доступен сразу без перезапуска CLI.
Использование copilot mcp add подкоманды
Вы можете добавить MCP-серверы из терминала с помощью copilot mcp add подкоманды, не переходя в интерактивный режим. Сервер добавляется в пользовательскую конфигурацию в ~/.copilot/mcp-config.json.
Для локальных (stdio) серверов задайте команду после --:
copilot mcp add SERVER-NAME -- COMMAND [ARGS...]
copilot mcp add SERVER-NAME -- COMMAND [ARGS...]
Для удалённых (HTTP/SSE) серверов укажите транспорт и укажите URL:
copilot mcp add --transport http SERVER-NAME URL
copilot mcp add --transport http SERVER-NAME URL
Вы также можете пройти дополнительные варианты:
--env KEY=VALUE: Задать переменные среды для сервера. Повторяйте для нескольких переменных.--header "HEADER: VALUE": Задайте HTTP-заголовки для удалённых серверов. Повторяйте для нескольких заголовков.--transport TRANSPORT: Установить тип транспорта (stdio,http, илиsse). Значение по умолчанию —stdio.--tools TOOLS: Укажите, какие инструменты включать. Используйте*для всех инструментов (по умолчанию), список с разделёнными запятыми или""для их отсутствия.--timeout MS: Установить тайм-аут в миллисекундах.
Примеры
Добавьте локальный stdio сервер:
copilot mcp add context7 -- npx -y @upstash/context7-mcp
copilot mcp add context7 -- npx -y @upstash/context7-mcp
Добавьте локальный сервер с переменными среды:
copilot mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
copilot mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
Добавьте удалённый HTTP-сервер:
copilot mcp add --transport http notion \ https://mcp.notion.com/mcp
copilot mcp add --transport http notion \
https://mcp.notion.com/mcp
Добавьте удалённый сервер с заголовком авторизации:
copilot mcp add --transport http \ --header "Authorization: Bearer YOUR-TOKEN" \ stripe https://mcp.stripe.com
copilot mcp add --transport http \
--header "Authorization: Bearer YOUR-TOKEN" \
stripe https://mcp.stripe.com
Редактирование конфигурационного файла
Вы также можете добавить MCP-серверы, отредактировав конфигурационный файл по ~/.copilot/mcp-config.jsonадресу . Это полезно, если вы хотите делиться конфигурациями или добавлять несколько серверов одновременно.
Следующий пример показывает конфигурационный файл с локальным сервером и удалённым HTTP-сервером:
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {},
"tools": ["*"]
},
"context7": {
"type": "http",
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "YOUR-API-KEY"
},
"tools": ["*"]
}
}
}
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {},
"tools": ["*"]
},
"context7": {
"type": "http",
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "YOUR-API-KEY"
},
"tools": ["*"]
}
}
}
Для получения дополнительной информации о конфигурации сервера MCP см. Настройте MCP-серверы для вашего репозитория.
Добавление серверов MCP для каждого репозитория
Серверы MCP можно настроить для определенного проекта, добавив JSON-файл в репозиторий. Это полезно, если вы хотите, чтобы серверы были доступны только при работе в этом проекте или если вы хотите предоставить общий доступ к настройке MCP с участниками совместной работы, зафиксировав его в репозитории.
Второй пилот CLI ищет конфигурацию уровня проекта в следующих расположениях:
| Путь | Рекомендуемое использование |
|---|---|
.mcp.json (в любом каталоге из рабочего каталога до корневого каталога репозитория) | Локальная или локальная конфигурация для каждого заказа; обычно помещается в корневой каталог проекта |
.github/mcp.json | Общая конфигурация, зафиксированная в репозитории |
При запуске Второй пилот CLI в репозитории Git интерфейс командной строки проходит от текущего рабочего каталога до корневого каталога репозитория, загружая файлы конфигурации MCP по пути. Если оба .mcp.json и .github/mcp.json существуют в одном каталоге, .mcp.json имеет приоритет. При конфликте имен серверов определения в файлах ближе к рабочему каталогу имеют приоритет. определения уровня Project также имеют приоритет над определениями в ~/.copilot/mcp-config.json. Дополнительные сведения об относительном доверии см. в разделе Справочник команды GitHub Copilot CLI.
файлы уровня Project могут использовать mcpServers либо объект верхнего уровня, показанный в ~/.copilot/mcp-config.jsonформате верхнего уровня, где каждый ключ является именем сервера MCP. Например, эта конфигурация использует mcpServers объект:
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
}
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
}
Тот же сервер также можно настроить с использованием формата верхнего уровня:
{
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
{
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
Примечание.
серверы MCP уровня Project загружаются только после подтверждения доверия к папке при первом запуске. Они молча пропускаются в ненадежных каталогах. Дополнительные сведения о доверии к папкам см. в разделе О GitHub Copilot CLI.
В режиме запроса (copilot -p) серверы MCP уровня проекта загружаются автоматически, если текущий каталог уже является доверенным. Если каталог не является доверенным, серверы MCP уровня проекта пропускаются по умолчанию. Чтобы загрузить их, задайте для переменной GITHUB_COPILOT_PROMPT_MODE_WORKSPACE_MCP``trueсреды значение , так как режим запроса не может отображать интерактивный запрос доверия. Дополнительные сведения см. в разделе Справочник команды GitHub Copilot CLI.
Файл .vscode/mcp.json для VS Code файла не считывается Второй пилот CLI. В нем используется неподдерживаемый ключ serversверхнего уровня. Сведения о переносе существующего .vscode/mcp.json в формат, который принимает CLI, см. в разделе Справочник команды GitHub Copilot CLI.
Поиск и установка из реестра
Примечание.
Команда /mcp search в настоящее время является экспериментальной функцией. Чтобы воспользоваться им, начните Второй пилот CLI с ‑‑experimental командной строки или введите /experimental on во время сессии.
Вы можете обнаружить и установить MCP-серверы напрямую из GitHub реестра MCP с помощью /mcp search команды в интерактивном режиме. Это позволяет просматривать доступные серверы, просматривать их данные и устанавливать их без ручного заполнения формы конфигурации.
Если ваша организация настроила пользовательский URL реестра MCP, /mcp search он подключается к этому реестру, а не к стандартному GitHub .
-
В интерактивном режиме входите
/mcp search, чтобы просматривать топовые серверы по звёздам или/mcp search QUERYискать конкретный сервер. Рассмотрим пример./mcp search context7 -
Отображается навигационный по клавиатуре список соответствующих серверов. Используйте стрелки, чтобы просмотреть результаты.
-
Выберите сервер, чтобы открыть его форму конфигурации. Форма заранее заполняется конфигурацией сервера из реестра. Заполните необходимые поля, такие как ключи API или токены.
-
Нажмите Ctrl+S для сохранения. Сервер добавляется в ваш
mcp-config.jsonсервер и запускается сразу.
Управление серверами MCP
Вы можете управлять настроенными MCP-серверами с помощью /mcp команд в интерактивном режиме или copilot mcp подкоманд из терминала.
Использование /mcp команд в интерактивном режиме
-
Список настроенных MCP-серверов: Используй команду
/mcp show. Он отображает все настроенные MCP-серверы и их текущий статус. -
Подробнее о конкретном сервере: Используй команду
/mcp show SERVER-NAME. Он отображает статус указанного сервера и список предоставляемых им инструментов. -
Редактировать конфигурацию сервера: Используй команду
/mcp edit SERVER-NAME. -
Удалить сервер: Используй команду
/mcp delete SERVER-NAME. -
Отключите сервер: Используй команду
/mcp disable SERVER-NAME. Отключённый сервер остаётся настроенным, но не используется Copilot для текущей сессии. -
Включите ранее отключённый сервер: Используй команду
/mcp enable SERVER-NAME.
Использование copilot mcp подкоманд с терминала
Вы также можете управлять MCP-серверами из терминала без перехода в интерактивный режим.
-
Перечислите все настроенные серверы:
Shell copilot mcp list
copilot mcp listПеречисляет серверы из всех источников конфигурации (пользователь, рабочее пространство и плагин). Добавьте
--jsonдля JSON-вывода. -
Посмотрите детали сервера:
Shell copilot mcp get SERVER-NAME
copilot mcp get SERVER-NAMEПоказывает тип сервера, статус и доступные инструменты. Добавьте
--jsonдля JSON-вывода. -
Удаление сервера:
Shell copilot mcp remove SERVER-NAME
copilot mcp remove SERVER-NAMEУдаляет сервер из конфигурации пользователя.
Использование серверов MCP
После добавления MCP-сервера можно Copilot автоматически использовать предоставленные инструменты по актуальности для вашего запроса. Вы также можете напрямую ссылаться на MCP-сервер и конкретные инструменты в запросе, чтобы убедиться, что они используются.