基本能力
产品定位
DBT CLI MCP Server 是一个中间件服务,旨在通过标准化的 MCP 协议为 AI 编码代理提供与 dbt 项目交互的能力。
核心功能
- 通过 MCP 工具执行 dbt 命令
- 支持所有主要的 dbt 操作(run, test, compile 等)
- 提供命令行接口直接交互
- dbt 项目的环境变量管理
- 可配置的 dbt 可执行路径
- 灵活的 profiles.yml 位置配置
适用场景
- AI 编码代理与 dbt 项目的交互
- 自动化 dbt 项目管理和操作
- 集成 dbt 功能到其他工具或平台
工具列表
dbt_run
: 运行 dbt 模型dbt_test
: 运行 dbt 测试dbt_ls
: 列出 dbt 资源dbt_compile
: 编译 dbt 模型dbt_debug
: 调试 dbt 项目设置dbt_deps
: 安装 dbt 包依赖dbt_seed
: 加载 CSV 文件作为种子数据dbt_show
: 预览模型结果
常见问题解答
- 如何解决 'Could not find profile named 'X'' 错误?
- 确保 profiles.yml 文件存在于项目目录中
- 确保 profiles.yml 文件包含 dbt_project.yml 中引用的配置文件
使用教程
使用依赖
- Python 3.10 或更高版本
uv
工具用于 Python 环境管理- 已安装 dbt CLI
安装教程
```bash
克隆仓库(包含子模块)
git clone --recurse-submodules https://github.com/yourusername/dbt-cli-mcp.git
cd dbt-cli-mcp
如果已经克隆但没有子模块,初始化子模块
git submodule update --init
创建并激活虚拟环境
uv venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
安装依赖
uv pip install -e .
开发环境安装开发依赖
uv pip install -e ".[dev]"
```
调试方式
```bash
运行 dbt 模型
dbt-mcp run --models customers --project-dir /path/to/project
运行 dbt 测试
dbt-mcp test --project-dir /path/to/project
列出 dbt 资源
dbt-mcp ls --resource-type model --output-format json
获取帮助
dbt-mcp --help
dbt-mcp run --help
```