Skip to Content
Руководство для пользователейВозможностиMCP

Подключение Qwen Code к инструментам через MCP

Qwen Code может подключаться к внешним инструментам и источникам данных через протокол контекста модели (MCP) . Серверы MCP предоставляют Qwen Code доступ к вашим инструментам, базам данных и API.

Возможности MCP

После подключения серверов MCP вы можете просить Qwen Code:

  • Работать с файлами и репозиториями (чтение/поиск/запись — в зависимости от включённых инструментов);
  • Выполнять запросы к базам данных (анализ схемы, выполнение запросов, формирование отчётов);
  • Интегрировать внутренние сервисы (обёртка ваших API как инструментов MCP);
  • Автоматизировать рабочие процессы (повторяющиеся задачи, представленные как инструменты или шаблоны запросов).
Tip

Если вы ищете «единственную команду для старта», перейдите к разделу Быстрый старт.

Быстрый старт

Qwen Code загружает серверы MCP из параметра mcpServers в файле settings.json. Настроить серверы можно двумя способами:

  • Редактируя файл settings.json напрямую;
  • Используя команды qwen mcp (см. Справочник CLI).

Добавьте свой первый сервер

  1. Добавьте сервер (пример: удалённый HTTP-сервер MCP):
qwen mcp add --transport http my-server http://localhost:3000/mcp
  1. Откройте диалоговое окно управления MCP для просмотра и управления серверами:
qwen mcp
  1. Перезапустите Qwen Code в том же проекте (или запустите его, если он ещё не был запущен), затем попросите модель использовать инструменты с этого сервера.

Где хранится конфигурация (области видимости)

Большинству пользователей нужны только эти две области видимости:

  • Область проекта (по умолчанию): .qwen/settings.json в корне вашего проекта
  • Область пользователя: ~/.qwen/settings.json — применяется ко всем проектам на вашем компьютере

Запись в область пользователя:

qwen mcp add --scope user --transport http my-server http://localhost:3000/mcp
Tip

Для расширенных уровней конфигурации (системные значения по умолчанию, системные настройки и правила приоритетности) см. раздел Настройки.

Настройка серверов

Выбор транспорта

ТранспортКогда использоватьПоле(я) JSON
httpРекомендуется для удалённых сервисов; хорошо работает с облачными серверами MCPhttpUrl (+ необязательное поле headers)
sseУстаревшие/устаревшие серверы, поддерживающие только Server-Sent Events (SSE)url (+ необязательное поле headers)
stdioЛокальный процесс (скрипты, CLI, Docker) на вашем компьютереcommand, args (+ необязательные cwd, env)
Note

Если сервер поддерживает оба протокола, предпочтение следует отдавать HTTP вместо SSE.

Настройка через settings.json или команду qwen mcp add

Оба подхода приводят к одинаковым записям в массиве mcpServers вашего файла settings.json. Используйте тот, который вам удобнее.

Сервер Stdio (локальный процесс)

JSON (.qwen/settings.json):

{ "mcpServers": { "pythonTools": { "command": "python", "args": ["-m", "my_mcp_server", "--port", "8080"], "cwd": "./mcp-servers/python", "env": { "DATABASE_URL": "$DB_CONNECTION_STRING", "API_KEY": "${EXTERNAL_API_KEY}" }, "timeout": 15000 } } }

CLI (по умолчанию записывает в область видимости проекта):

qwen mcp add pythonTools -e DATABASE_URL=$DB_CONNECTION_STRING -e API_KEY=$EXTERNAL_API_KEY \ --timeout 15000 python -m my_mcp_server --port 8080

HTTP-сервер (удалённый потоковый HTTP)

JSON:

{ "mcpServers": { "httpServerWithAuth": { "httpUrl": "http://localhost:3000/mcp", "headers": { "Authorization": "Bearer ваш-токен-api" }, "timeout": 5000 } } }

CLI:

qwen mcp add --transport http httpServerWithAuth http://localhost:3000/mcp \ --header "Authorization: Bearer ваш-токен-api" --timeout 5000

SSE-сервер (удалённые события, отправляемые сервером — Server-Sent Events)

JSON:

{ "mcpServers": { "sseServer": { "url": "http://localhost:8080/sse", "timeout": 30000 } } }

CLI:

qwen mcp add --transport sse sseServer http://localhost:8080/sse --timeout 30000

Безопасность и управление

Доверие (пропуск подтверждений)

  • Доверие к серверу (trust: true): пропускает запросы подтверждения для этого сервера (используйте умеренно).

Фильтрация инструментов (разрешение/запрет инструментов на сервере)

Используйте параметры includeTools / excludeTools, чтобы ограничить набор инструментов, предоставляемых сервером (с точки зрения Qwen Code).

Пример: разрешить только несколько инструментов:

{ "mcpServers": { "filteredServer": { "command": "python", "args": ["-m", "my_mcp_server"], "includeTools": ["safe_tool", "file_reader", "data_processor"], "timeout": 30000 } } }

Глобальные списки разрешённых/запрещённых серверов

Объект mcp в файле settings.json определяет глобальные правила для всех серверов MCP:

  • mcp.allowed: список имён разрешённых серверов MCP (ключей из mcpServers)
  • mcp.excluded: список имён запрещённых серверов MCP

Пример:

{ "mcp": { "allowed": ["my-trusted-server"], "excluded": ["experimental-server"] } }

Устранение неполадок

  • Сервер отображается как «Отключён» в qwen mcp list: убедитесь, что URL или команда указаны верно, затем увеличьте значение параметра timeout.
  • Сервер stdio не запускается: укажите абсолютный путь к исполняемому файлу в параметре command и дважды проверьте значения cwd и env.
  • Переменные окружения в JSON не разрешаются: убедитесь, что они существуют в среде, где выполняется Qwen Code (среда оболочки и среда GUI-приложения могут отличаться).

Справочник

Структура файла settings.json

Конфигурация, специфичная для сервера (mcpServers)

Добавьте объект mcpServers в файл settings.json:

// ... файл содержит другие конфигурационные объекты { "mcpServers": { "serverName": { "command": "путь/к/серверу", "args": ["--arg1", "value1"], "env": { "API_KEY": "$MY_API_TOKEN" }, "cwd": "./server-directory", "timeout": 30000, "trust": false } } }

Свойства конфигурации:

Обязательные (одно из следующих):

СвойствоОписание
commandПуть к исполняемому файлу для транспорта через Stdio
urlURL-адрес конечной точки SSE (например, "http://localhost:8080/sse")
httpUrlURL-адрес конечной точки HTTP-потоковой передачи

Необязательные:

СвойствоТип/значение по умолчаниюОписание
argsмассивАргументы командной строки для транспорта через Stdio
headersобъектПользовательские HTTP-заголовки при использовании url или httpUrl
envобъектПеременные окружения для процесса сервера. Значения могут ссылаться на переменные окружения с помощью синтаксиса $VAR_NAME или ${VAR_NAME}
cwdстрокаРабочий каталог для транспорта через Stdio
timeoutчисло
(по умолчанию: 600 000)
Таймаут запроса в миллисекундах (по умолчанию: 600 000 мс = 10 минут)
trustлогическое значение
(по умолчанию: false)
При значении true пропускаются все подтверждения вызовов инструментов для этого сервера (по умолчанию: false)
includeToolsмассивСписок имён инструментов, которые следует включить из этого MCP-сервера. При указании доступны только перечисленные здесь инструменты (поведение «белого списка»). Если не указано, по умолчанию включены все инструменты сервера.
excludeToolsмассивСписок имён инструментов, которые следует исключить из этого MCP-сервера. Перечисленные здесь инструменты недоступны модели, даже если они предоставляются сервером.
Примечание: excludeTools имеет приоритет над includeTools: если инструмент указан в обоих списках, он будет исключён.
targetAudienceстрокаИдентификатор OAuth-клиента, разрешённый для доступа к защищённому IAP приложению, к которому вы пытаетесь получить доступ. Используется совместно с параметром authProviderType: 'service_account_impersonation'.
targetServiceAccountстрокаАдрес электронной почты учётной записи сервиса Google Cloud, от имени которой выполняется вход. Используется совместно с параметром authProviderType: 'service_account_impersonation'.

Управление серверами MCP с помощью qwen mcp

Вы всегда можете настраивать серверы MCP, вручную редактируя файл settings.json, однако использование CLI обычно быстрее.

Добавление сервера (qwen mcp add)

qwen mcp add [опции] <имя> <команда_или_адрес> [аргументы...]
Аргумент/опцияОписаниеПо умолчаниюПример
<имя>Уникальное имя сервера.example-server
<команда_или_адрес>Команда для выполнения (для stdio) или URL-адрес (для http/sse)./usr/bin/python или http://localhost:8
[аргументы...]Необязательные аргументы для команды stdio.--port 5000
-s, --scopeОбласть действия конфигурации (пользовательская или проектная).project-s user
-t, --transportТип транспорта (stdio, sse, http).stdio-t sse
-e, --envЗадать переменные окружения.-e KEY=value
-H, --headerЗадать HTTP-заголовки для транспортов SSE и HTTP.-H "X-Api-Key: abc123"
--timeoutЗадать таймаут подключения в миллисекундах.--timeout 30000
--trustДоверять серверу (пропускать все запросы подтверждения вызова инструментов).— (false)--trust
--descriptionЗадать описание сервера.--description "Локальные инструменты"
--include-toolsСписок инструментов для включения, разделённый запятыми.включены все инструменты--include-tools mytool,othertool
--exclude-toolsСписок инструментов для исключения, разделённый запятыми.исключены никакие инструменты--exclude-tools mytool

Удаление сервера (qwen mcp remove)

qwen mcp remove <name>
Last updated on