dbt MCP-сервер
Этот сервер MCP (Model Context Protocol) предоставляет инструменты для взаимодействия с dbt. Прочтите этот блог, чтобы узнать больше.
Архитектура
Настраивать
- Клонируйте репозиторий:
- Установить УФ
- Установить задачу
- Запустить
task install
- Настройте переменные среды:
Затем отредактируйте .env
, указав необходимые вам переменные среды (см. раздел Configuration
в файле README.md
).
Конфигурация
Сервер MCP имеет следующую конфигурацию:
Группы инструментов
Имя | По умолчанию | Описание |
---|---|---|
DISABLE_DBT_CLI | false | Установите значение true , чтобы отключить инструменты MCP dbt Core и dbt Cloud CLI. |
DISABLE_SEMANTIC_LAYER | false | Установите значение true , чтобы отключить объекты MCP семантического слоя dbt. |
DISABLE_DISCOVERY | false | Установите значение true , чтобы отключить объекты MCP API dbt Discovery. |
DISABLE_REMOTE | true | Установите значение false , чтобы включить удаленные объекты MCP. |
Конфигурация для обнаружения и семантического уровня
Имя | По умолчанию | Описание |
---|---|---|
DBT_HOST | cloud.getdbt.com | Имя хоста вашего экземпляра dbt Cloud. Это будет выглядеть как Access URL найденный здесь . Если вы используете Multi-cell, не включайте здесь ACCOUNT_PREFIX |
MULTICELL_ACCOUNT_PREFIX | - | Если вы используете Multi-cell, установите это в ваш ACCOUNT_PREFIX . Если вы не используете Multi-cell, не устанавливайте эту переменную окружения. Вы можете узнать больше здесь |
DBT_TOKEN | - | Ваш личный токен доступа или сервисный токен. Примечание Сервисный токен требуется при использовании семантического слоя |
DBT_PROD_ENV_ID | - | Ваш идентификатор производственной среды dbt Cloud |
Конфигурация для удаленных инструментов
Имя | Описание |
---|---|
DBT_DEV_ENV_ID | Ваш идентификатор среды разработки dbt Cloud |
DBT_USER_ID | Ваш идентификатор пользователя dbt Cloud |
Конфигурация для dbt CLI
Имя | Описание |
---|---|
DBT_PROJECT_DIR | Путь к локальному размещению репозитория вашего проекта dbt. Это должно выглядеть примерно так: /Users/firstnamelastname/reponame |
DBT_PATH | Путь к исполняемому файлу dbt Core или dbt Cloud CLI. Вы можете найти исполняемый файл dbt, запустив which dbt |
Использование с клиентами MCP
После завершения установки вы сможете использовать свой сервер с клиентом MCP.
Эта конфигурация будет добавлена в соответствующий файл конфигурации клиента. Обязательно замените разделы внутри <>
:
<path-to-mcp-executable>
зависит от вашей ОС:
- Linux и Mac:
<path-to-this-directory>/.venv/bin/mcp
- ПК:
<path-to-this-directory>/.venv/Scripts/mcp
Клод Десктоп
Следуйте этим инструкциям, чтобы создать файл claude_desktop_config.json
и подключиться.
На Mac вы можете найти журналы Claude Desktop в ~/Library/Logs/Claude
.
Курсор
- Откройте меню Курсор и выберите Настройки → Настройки курсора → MCP.
- Нажмите «Добавить новый глобальный сервер MCP».
- Добавьте конфигурацию, указанную выше, в предоставленный файл
mcp.json
- Убедитесь, что ваше соединение активно на вкладке MCP.
Документация по Cursor MCP здесь для справки
Код VS
- Откройте меню «Настройки» (Command + Comma) и выберите нужную вкладку в верхней части страницы для вашего варианта использования.
Workspace
— настраивает сервер в контексте вашего рабочего пространства.User
- настраивает сервер в контексте вашего пользователя.- Примечание для пользователей WSL : если вы используете VS Code с WSL, вам необходимо настроить параметры, специфичные для WSL. Выполните команду Preferences: Open Remote Settings из палитры команд (F1) или выберите вкладку Remote в редакторе настроек. Настройки локального пользователя повторно используются в WSL, но могут быть переопределены настройками, специфичными для WSL. Настройка серверов MCP в настройках локального пользователя не будет работать должным образом в среде WSL.
- Выберите Функции → Чат
- Убедитесь, что «Mcp»
Enabled
- Нажмите «Изменить в settings.json» в разделе «Mcp > Discovery».
- Добавьте конфигурацию вашего сервера (
dbt
) в предоставленный файлsettings.json
в качестве одного из серверов:
<path-to-mcp-executable>
зависит от вашей ОС:
- Linux и Mac:
<path-to-this-directory>/.venv/bin/mcp
- ПК:
<path-to-this-directory>/.venv/Scripts/mcp
- Вы можете запускать, останавливать и настраивать свои серверы MCP следующими способами:
- Запуск команды
MCP: List Servers
из палитры команд (Control + Command + P) и выбор сервера. - Использование ключевых слов, встроенных в файл
settings.json
Документация VS Code MCP здесь для справки
Инструменты
dbt CLI
build
— выполняет модели, тесты, снимки и начальные значения в порядке зависимости.compile
— генерирует исполняемый SQL-код из моделей, тестов и анализов без их запускаdocs
— создает документацию для проекта dbtls
(список) — выводит список ресурсов в проекте dbt, таких как модели и тесты.parse
— анализирует и проверяет файлы проекта на правильность синтаксиса.run
— выполняет модели для их материализации в базе данных.test
— запускает тесты для проверки целостности данных и модели.show
— выполняет запрос к хранилищу данных.
Разрешение вашему клиенту использовать команды dbt через этот инструментарий MCP может изменить ваши модели данных, источники и объекты хранилища. Продолжайте, только если вы доверяете клиенту и понимаете потенциальное воздействие.
Семантический слой
list_metrics
— извлекает все определенные метрикиget_dimensions
— Получает измерения, связанные с указанными метрикамиget_entities
— Получает сущности, связанные с указанными метрикамиquery_metrics
— запрашивает метрики с возможностью группировки, упорядочивания, фильтрации и ограничения.
Открытие
get_mart_models
— Получает все модели martget_all_models
— Получает все моделиget_model_details
— Получает сведения о конкретной моделиget_model_parents
— Получает родительские узлы определенной моделиget_model_children
— Получает дочерние режимы определенной модели
Внося вклад
Инструкции о том, как принять участие, читайте на CONTRIBUTING.md
!
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
dbt-mcp
Related MCP Servers
- JavaScriptMIT License
- Python
- PythonMIT License
- JavaScriptMIT License