Перейти к основному содержимому

Справочник переменных окружения MCP

На этой странице приведён краткий справочник всех переменных окружения, используемых сервером dbt MCP, развёрнутым в собственной инфраструктуре. Подробные сведения о каждой переменной (включая примеры) см. в разделе Настройка MCP в собственной инфраструктуре.

Локальный CLI​

Эти переменные необходимы для выполнения команд dbt через MCP.

ПеременнаяОбязательностьОписание
DBT_PROJECT_DIRОбязательнаяПолный путь к папке вашего проекта dbt (папке, содержащей dbt_project.yml).
DBT_PATHОбязательнаяПолный путь к исполняемому файлу dbt. Чтобы найти его, выполните which dbt (macOS/Linux) или where dbt (Windows).
DBT_PROFILES_DIRНеобязательнаяПуть к пользовательскому каталогу с файлом profiles.yml. По умолчанию — ~/.dbt/.
DBT_CLI_TIMEOUTНеобязательнаяВремя ожидания выполнения команд dbt в секундах. По умолчанию — 60. Компиляция охватывает весь проект, поэтому для больших проектов может потребоваться увеличить этот предел, чтобы избежать превышения времени ожидания.

Платформа dbt​

Эти переменные необходимы для использования возможностей dbt platform (Semantic Layer, Discovery API, Admin API, выполнение SQL).

ПеременнаяОбязательностьОписание
DBT_HOSTОбязательнаяИмя хоста вашей dbt platform. Допускаются как cloud.getdbt.com (по умолчанию), так и https://cloud.getdbt.com.

Укажите полное имя хоста с поддоменом, например DBT_HOST=abc123.us1.dbt.com. Отдельно задавать префикс с помощью MULTICELL_ACCOUNT_PREFIX или DBT_HOST_PREFIX больше не требуется.
DBT_TOKENОбязательнаяСервисный токен или персональный токен доступа (PAT).

Для инструмента execute_sql требуется PAT — сервисные токены для этого инструмента не подходят.
DBT_PROD_ENV_IDОбязательнаяИдентификатор вашей производственной среды (целое число).
DBT_DEV_ENV_IDОбязательная для execute_sqlИдентификатор вашей среды разработки (целое число).
DBT_USER_IDОбязательная для execute_sqlВаш числовой идентификатор пользователя.
DBT_ACCOUNT_IDОбязательная для Admin API и аутентификации с помощью PATВаш числовой идентификатор аккаунта. Требуется, если в качестве DBT_TOKEN используется персональный токен доступа (PAT).
Устаревшие переменные префиксов

MULTICELL_ACCOUNT_PREFIX и DBT_HOST_PREFIX — устаревшие переменные окружения. Они поддерживаются для обратной совместимости — если они уже заданы, то продолжат работать. Однако рекомендуется указывать полное имя хоста непосредственно в DBT_HOST (например, DBT_HOST=abc123.us1.dbt.com).

Пошаговые инструкции по поиску каждого значения см. в разделе Поиск ваших идентификаторов.

Настройка инструментов​

В dbt MCP предусмотрено два режима управления доступностью инструментов: режим отключения (по умолчанию) и режим включения (список разрешённых).

По мере добавления новых возможностей наборы инструментов могут расширяться. Общие шаблоны имён переменных — DISABLE_{TOOLSET}= и DBT_MCP_ENABLE_{TOOLSET}=, поэтому для новых наборов инструментов используется то же соглашение. Актуальный список имён наборов инструментов см. в таблицах ниже или в README dbt-mcp.

Какой режим выбрать?
  • Режим отключения: используйте, если вам нужна большая часть инструментов и требуется отключить лишь некоторые из них.
  • Режим включения: используйте, если вам нужен только определённый набор инструментов.

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

# ❌ Смешение режимов приводит к непредсказуемому поведению
DISABLE_SEMANTIC_LAYER=false
DBT_MCP_ENABLE_SEMANTIC_LAYER=true

Также избегайте строк DBT_MCP_ENABLE_*= с пустым значением: они активируют режим включения и без предупреждения отключают все остальные наборы инструментов.

Режим отключения (по умолчанию)​

По умолчанию доступны все инструменты. Чтобы отключить набор инструментов, задайте для соответствующей переменной из списка ниже значение true в конфигурации вашего MCP-клиента:

ПеременнаяЗначение по умолчаниюОписание
DISABLE_DBT_CLIfalseОтключает локальные инструменты dbt CLI (dbt v1.x и v2).
DISABLE_SEMANTIC_LAYERfalseОтключает инструменты Semantic Layer.
DISABLE_DISCOVERYfalseОтключает инструменты Discovery API.
DISABLE_ADMIN_APIfalseОтключает инструменты Admin API.
DISABLE_SQLtrueИнструменты SQL отключены по умолчанию. Чтобы включить их, задайте значение false.
DISABLE_DBT_CODEGENtrueИнструменты генерации кода отключены по умолчанию. Чтобы включить их, задайте значение false (требуется пакет dbt-codegen).
DISABLE_LSPfalseОтключает инструменты LSP/dbt v2.
DISABLE_MCP_SERVER_METADATAtrueИнструменты метаданных сервера отключены по умолчанию. Чтобы включить их, задайте значение false.
DISABLE_TOOLS""Список имён отдельных инструментов для отключения, разделённых запятыми.

Режим включения (список разрешённых)​

Если задана хотя бы одна переменная DBT_MCP_ENABLE_*, активны только явно включённые наборы инструментов:

ПеременнаяОписание
DBT_MCP_ENABLE_DBT_CLIЗадайте значение true, чтобы включить локальные инструменты dbt CLI (dbt v1.x и v2).
DBT_MCP_ENABLE_SEMANTIC_LAYERЗадайте значение true, чтобы включить инструменты Semantic Layer.
DBT_MCP_ENABLE_DISCOVERYЗадайте значение true, чтобы включить инструменты Discovery API.
DBT_MCP_ENABLE_ADMIN_APIЗадайте значение true, чтобы включить инструменты Admin API.
DBT_MCP_ENABLE_SQLЗадайте значение true, чтобы включить инструменты SQL.
DBT_MCP_ENABLE_DBT_CODEGENЗадайте значение true, чтобы включить инструменты генерации кода.
DBT_MCP_ENABLE_LSPЗадайте значение true, чтобы включить инструменты LSP/dbt v2.
DBT_MCP_ENABLE_TOOLSСписок имён отдельных инструментов для включения, разделённых запятыми.

Приоритет​

Если задано несколько переменных, они обрабатываются в следующем порядке (от наивысшего приоритета к наименьшему):

  1. DBT_MCP_ENABLE_TOOLS (включение отдельных инструментов по имени)
  2. DISABLE_TOOLS (отключение отдельных инструментов по имени)
  3. Включение набора инструментов (DBT_MCP_ENABLE_*=true)
  4. Отключение набора инструментов (DISABLE_*=true)
  5. Поведение по умолчанию

Semantic Layer​

Эти переменные управляют поведением инструментов Semantic Layer.

ПеременнаяЗначение по умолчаниюОписание
DBT_MCP_SL_METRICS_RELATED_MAX10Максимальное количество метрик, при котором list_metrics также возвращает имена измерений и сущностей непосредственно в ответе, сокращая количество вызовов инструментов, необходимых для ответа на вопросы о данных. Если количество метрик не превышает это значение, измерения и сущности включаются непосредственно в ответ list_metrics. Если количество метрик превышает это значение, возвращаются только имена метрик, а LLM отдельно вызывает get_dimensions/get_entities. Задайте значение 0, чтобы всегда возвращать только метрики и никогда не включать данные измерений или сущностей в ответ.
DBT_MCP_SL_MAX_RESPONSE_CHARS16000Максимальная длина CSV, возвращаемого list_metrics, в символах. Значение должно быть целым числом >= 0. Если длина ответа превышает этот предел и количество метрик превышает DBT_MCP_SL_METRICS_RELATED_MAX, столбцы description и metadata исключаются из ответа для экономии токенов. Задайте значение 0, чтобы отключить сокращение и всегда возвращать полный ответ.

Ведение журналов и отладка​

ПеременнаяЗначение по умолчаниюОписание
DBT_MCP_LOG_LEVELINFOУровень журналирования для MCP-сервера. Допустимые значения: DEBUG, INFO, WARNING, ERROR, CRITICAL. Для диагностики проблем временно задайте значение DEBUG.
MCP_TRANSPORTstdioТранспортный протокол. Задавайте значение streamable-http только для локальной отладки (например, для подключения отладчика Python). См. руководство CONTRIBUTING проекта dbt-mcp.

Нашли ошибку?

0
Loading