SuperAPI AI 工具集

configuring-dbt-mcp-server

智能体与模型

查看项目

更新于 10-15 23:46

技能介绍

该技能帮助用户把 AI 工具连接到 dbt 的 CLI、Semantic Layer、Discovery API 和 Admin API,并给出匹配使用场景的配置。

用途与选择:先判断使用本地服务器还是远程服务器。本地服务器通过 uvx dbt-mcp 在机器上运行,支持 dbt CLI 命令(run、build、test、show),适合开发(编写模型、测试、文档),不需要平台账号也可连接平台消费数据,且不消耗额度;远程服务器通过 HTTP 连接 dbt 平台,适合仅消费(查询指标、探索元数据),需要 dbt 平台账号并消耗 dbt Copilot 额度,不支持 CLI 命令。

主要能力:生成配置 JSON、解析认证设置、验证连通性。可询问 MCP 客户端类型(全局、项目、桌面或编辑器客户端)和具体使用场景(仅 CLI、仅平台、平台加 CLI)。工具类别开关及环境变量:dbt CLI、Semantic Layer、Discovery API、Admin API 默认启用,分别可用 DISABLE_DBT_CLI=true、DISABLE_SEMANTIC_LAYER=true、DISABLE_DISCOVERY=true、DISABLE_ADMIN_API=true 关闭;SQL 与 Codegen 默认关闭,用 DISABLE_SQL=false、DISABLE_DBT_CODEGEN=false 启用。

使用方式:本地服务器需安装 uv,准备 dbt 项目,确定 DBT_PROJECT_DIR(含 dbt_project.yml 的目录)与 DBT_PATH(dbt 可执行文件路径)。配置示例:命令 uvx,参数 dbt-mcp,并通过 env 传入变量;也可用 uvx --env-file /path/to/.env dbt-mcp。远程服务器配置 url 为 https://cloud.getdbt.com/api/ai/v1/mcp/,headers 含 Authorization 与 x-dbt-prod-environment-id,SQL/Fusion 工具还需 x-dbt-dev-environment-id、x-dbt-user-id。不同客户端配置位置不同,如 Kilo 在 kilo.json 的 mcp 键下,VS Code 使用 servers 而非 mcpServers。

安全限制:配置文件中应使用 ${DBT_TOKEN} 等环境变量引用,不要写入明文令牌;不要把令牌输出到终端;.env 应加入 .gitignore;建议定期轮换并使用最小权限。验证可运行 uvx --env-file .env dbt-mcp,无报错即成功,也可在客户端询问可用 dbt 工具。其余细节资料未提供。