dbt-mcp
dbt-mcp 是一款基于模型上下文协议(MCP)构建的服务器,旨在为 AI 智能体提供与 dbt 项目深度交互的能力。它成功解决了大语言模型在缺乏项目上下文时难以准确理解数据架构、生成可靠 SQL 或执行复杂分析痛的点,让 AI 能够“读懂”你的 dbt 核心、Fusion 及平台项目。
这款工具特别适合数据工程师、分析师以及正在构建数据智能应用的开发者使用。通过 dbt-mcp,AI 智能体不仅能将自然语言直接转化为可执行的 SQL,还能深入探索项目的语义层,轻松查询指标、维度及实体信息。其强大的发现功能允许智能体检索模型血缘关系、检查数据健康状态、查看宏与测试详情,甚至进行跨资源的语义搜索。此外,它还支持直接调用 dbt CLI 命令,实现了从代码生成到实际执行的全流程自动化。
dbt-mcp 的独特亮点在于其标准化的架构设计,通过预发布的实验性捆绑包(MCP Bundle),用户无需繁琐配置即可让兼容的 AI 客户端快速接入。它将分散的数据元数据、业务逻辑和执行能力统一封装,使 AI 不再是孤立的聊天机器人,而是真正懂业务、能操作的专业数据助手,极大提升了数据开发与运维的效率。
使用场景
某电商公司的数据分析师需要紧急排查“用户复购率”指标异常下降的原因,并快速生成修复后的 SQL 验证数据。
没有 dbt-mcp 时
- 上下文割裂:分析师需手动在 dbt Cloud UI、代码编辑器和大模型聊天窗口间反复切换,复制粘贴模型定义和血缘关系,效率极低。
- 黑盒依赖:难以直观判断上游源表 freshness(新鲜度)或下游 Exposure(如 BI 报表)的影响范围,容易误改关键节点。
- 自然语言转译难:想让 AI 写查询语句时,必须人工补充大量项目特有的宏(macros)和语义层定义,否则生成的 SQL 无法运行。
- 排查耗时:定位问题根源需手动层层追溯父子模型,面对复杂的血缘图谱,往往花费数小时仅为了理清数据链路。
使用 dbt-mcp 后
- 智能上下文感知:AI 助手通过 dbt-mcp 直接读取项目元数据,自动获取
user_retention模型的编译后 SQL、列信息及上游依赖,无需人工搬运。 - 全链路透视:调用
get_lineage和get_model_health工具,瞬间展示从源表到下游仪表板的完整血缘及健康状态,精准锁定是上游源数据延迟导致的问题。 - 原生语义理解:利用
text_to_sql和query_metrics工具,直接用自然语言指令生成符合公司语义层规范的查询语句,并直接在 dbt 基础设施上执行验证。 - 自动化归因:通过
get_related_models语义搜索相似模型,快速发现近期变更的逻辑冲突,将排查时间从数小时缩短至几分钟。
dbt-mcp 通过将静态的数据工程文档转化为 AI 可实时交互的动态上下文,让数据排查与开发从“人工拼凑信息”升级为“智能自主决策”。
运行环境要求
未说明
未说明

快速开始
dbt MCP 服务器
此 MCP(模型上下文协议)服务器提供多种工具,用于与 dbt 进行交互。您可以使用此 MCP 服务器为 AI 代理提供 dbt Core、dbt Fusion 和 dbt Platform 中项目的上下文信息。
请阅读我们的文档 这里 以了解更多信息。这篇博客文章提供了关于 dbt MCP 服务器功能的更多详细信息。
实验性 MCP 包
我们会在每次发布时附带一个实验性的模型上下文协议包 (dbt-mcp.mcpb),以便支持 MCPB 的客户端无需额外设置即可导入此服务器。请从最新版本的发布资产中下载该包,并按照 Anthropic 的 mcpb CLI 文档进行安装或检查。
反馈
如果您有任何意见或问题,请创建一个 GitHub 问题,或加入我们的 社区 Slack,在 #tools-dbt-mcp 频道中交流。
架构
dbt MCP 服务器的架构允许您的代理连接到多种工具。

工具
SQL
用于在 dbt Platform 基础设施上执行和生成 SQL 的工具。
execute_sql: 在 dbt Platform 基础设施上执行 SQL,并支持语义层。text_to_sql: 根据项目上下文,将自然语言转换为 SQL。
语义层
如需了解更多关于 dbt 语义层的信息,请点击 这里。
get_dimensions: 获取指定指标的维度。get_entities: 获取指定指标的实体。get_metrics_compiled_sql: 返回指标的编译后 SQL,但不执行查询。list_metrics: 检索所有已定义的指标。list_saved_queries: 检索所有保存的查询。query_metrics: 执行带有筛选和分组选项的指标查询。
Discovery
如需了解更多关于 dbt Discovery API 的信息,请点击 这里。
get_all_macros: 检索宏;可按包筛选或仅返回包名称。get_all_models: 检索所有模型的名称和描述。get_all_sources: 获取所有数据源及其新鲜度状态;可按数据源名称筛选。get_exposure_details: 获取曝光详情,包括负责人、父级和新鲜度状态。get_exposures: 获取所有曝光(下游仪表板、应用或分析)。get_lineage: 获取完整的血缘图(祖先和后代),并支持按类型和深度筛选。get_macro_details: 获取特定宏的详细信息。get_mart_models: 检索所有 Mart 模型。get_model_children: 获取模型的下游依赖项。get_model_details: 获取模型的详细信息,包括编译后的 SQL、列和模式。get_model_health: 获取健康信号:运行状态、测试结果以及上游数据源的新鲜度。get_model_parents: 获取模型的上游依赖项。get_model_performance: 获取模型的执行历史;可选择包含测试结果。get_related_models: 使用语义搜索查找相似模型。get_seed_details: 获取特定种子的详细信息。get_semantic_model_details: 获取特定语义模型的详细信息。get_snapshot_details: 获取特定快照的详细信息。get_source_details: 获取数据源的详细信息,包括列和新鲜度。get_test_details: 获取特定测试的详细信息。search: [Alpha] 在整个 dbt 项目中搜索资源(尚未正式发布)。
dbt CLI
允许您的客户端通过 MCP 工具使用 dbt 命令可能会修改您的数据模型、数据源和仓库对象。请仅在您信任该客户端且清楚潜在影响的情况下继续操作。
build: 按 DAG 顺序执行模型、测试、快照和种子。clone: 将选定节点从指定状态克隆到目标模式。compile: 从模型/测试/分析中生成可执行 SQL;可用于验证 Jinja 逻辑。docs: 为 dbt 项目生成文档。get_lineage_dev: 从本地 manifest.json 文件中检索血缘关系,并支持按类型和深度筛选。get_node_details_dev: 从本地 manifest.json 文件中检索节点详情(模型、种子、快照、数据源)。list: 按类型列出 dbt 项目中的资源,并支持选择器。parse: 解析并验证项目文件的语法正确性。run: 执行模型以将其物化到数据库中。show: 对数据库执行 SQL 并返回结果。test: 运行测试以验证数据和模型的完整性。
管理 API
如需了解更多关于 dbt 管理 API 的信息,请点击 这里。
cancel_job_run: 取消正在运行的作业。get_job_details: 获取作业配置,包括触发器、计划和 dbt 命令。get_job_run_details: 获取运行详情,包括状态、时间、步骤和产物。get_job_run_error: 获取作业运行中的错误和/或警告详情;可选择仅显示警告。list_job_run_artifacts: 列出作业运行中可用的产物。list_jobs: 列出 dbt Platform 账户中的作业;可按项目或环境筛选。list_jobs_runs: 列出作业运行;可按作业、状态筛选,或按字段排序。list_projects: 列出 dbt Platform 账户中的所有项目。retry_job_run: 重试失败的作业运行。trigger_job_run: 触发作业运行;可覆盖 Git 分支、模式或其他设置。
dbt Codegen
这些工具可帮助自动化 dbt 项目文件中样板代码的生成。
generate_model_yaml: 生成包含列的模型 YAML;可继承上游描述。generate_source: 通过内省数据库模式生成数据源 YAML;可选择包含列。generate_staging_model: 从数据源表生成暂存模型 SQL。
dbt LSP
这是一组利用 Fusion 引擎进行高级 SQL 编译和列级血缘分析的工具。
fusion.compile_sql: 通过 dbt Platform 在项目上下文中编译 SQL。fusion.get_column_lineage: 通过 dbt Platform 追踪列级血缘。get_column_lineage: 在本地追踪列级血缘(需要通过 dbt Labs VSCE 使用 dbt-lsp)。
产品文档
用于在 docs.getdbt.com 上搜索和获取 dbt 官方文档内容的工具。
get_product_doc_pages: 根据路径或 URL 获取一个或多个 docs.getdbt.com 页面的完整 Markdown 内容。search_product_docs: 在 docs.getdbt.com 中搜索与查询匹配的页面;按相关性排序后返回标题、URL 和描述。可使用get_product_doc_pages获取完整内容。
MCP 服务器元数据
这些工具提供有关 MCP 服务器本身的信息。
get_mcp_server_branch: 返回正在运行的 dbt MCP 服务器的当前 Git 分支。get_mcp_server_version: 返回 dbt MCP 服务器的当前版本。
示例
通常,您会将 dbt MCP 服务器连接到 Claude 或 Cursor 等代理产品。不过,如果您有兴趣创建自己的代理,请查看 示例目录,了解如何入门。
依赖项
依赖项被固定为特定版本,不会自动更新。只有与安全相关的依赖项更新才会通过自动化拉取请求提交。
贡献
请阅读 CONTRIBUTING.md 文件,了解如何参与贡献!
版本历史
v1.14.02026/04/14v1.13.02026/04/07v1.12.02026/04/01v1.11.02026/03/25v1.10.02026/03/10v1.9.32026/03/02v1.9.22026/02/25v1.9.12026/02/25v1.9.02026/02/11v1.8.12026/01/27v1.8.02026/01/27v1.7.02026/01/09v1.6.22026/01/07v1.6.12025/12/17v1.6.02025/12/11v1.5.22025/12/10v1.5.12025/12/09v1.5.02025/12/05v1.4.02025/12/03v1.3.02025/11/18常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
