dbt MCP Server

by dbt-labs

A MCP (Model Context Protocol) server for interacting with dbt resources. Requires a local .env file configured with environment variables as described in the README.

Developer toolsstdioCommunity

Repository-wide counts · Cached 2026-03-19

Overview

The dbt MCP Server MCP server is a publicly available project. Review the upstream repository for installation instructions, supported tools, compatibility, permissions, and current maintenance status.

Configuration

Configuration, transport, authentication, and runtime requirements vary by project. Open the repository before connecting and use the smallest set of credentials and permissions required.

Open the dbt MCP Server repository to read the latest documentation.

KEEP EXPLORING

Compare source, connection, and authentication details before choosing an implementation.

View the complete category

模型上下文协议服务器

modelcontextprotocol

Community

一组用于模型上下文协议(MCP)的参考实现,展示了对大型语言模型(LLM)工具和数据源的安全且受控的访问方式。

Context7 Platform - Up-to-date Code Docs For Any Prompt

upstash

Community

Context7 MCP server providing up-to-date, version-specific documentation and code examples for libraries, enabling coding agents to fetch accurate docs and code snippets. Requires an API key for higher rate limits, passed via CONTEXT7_API_KEY header.

Playwright MCP

Microsoft Corporation

Community

A Model Context Protocol (MCP) server that provides browser automation capabilities using Playwright. Enables LLMs to interact with web pages through structured accessibility snapshots, bypassing the need for screenshots or visually-tuned models.

AIHawk

feder-cr

Community

AIHawk is an anti detect browser and web browsing agent, open source, with an MCP server for coding agents: undetected, no captchas, no blocks. It requires an OpenRouter API key for the standalone web UI mode, which can be provided via the --openrouter-key flag or the OPENROUTER_API_KEY environment variable or a .env file in the running directory.

FROM THE SOURCE

Repository README

Build-time snapshot · Retrieved 2026-10-05

View original

dbt MCP Server

OpenSSF Best Practices

This MCP (Model Context Protocol) server provides various tools to interact with dbt. You can use this MCP server to provide AI agents with context of your project in dbt Core, dbt Fusion, and dbt Platform.

Read our documentation here to learn more. This blog post provides more details for what is possible with the dbt MCP server.

Experimental MCP Bundle

We publish an experimental Model Context Protocol Bundle (dbt-mcp.mcpb) with each release so that MCPB-aware clients can import this server without additional setup. Download the bundle from the latest release assets and follow Anthropic's mcpb CLI docs to install or inspect it.

Feedback

If you have comments or questions, create a GitHub Issue or join us in the community Slack in the #tools-dbt-mcp channel.

Architecture

The dbt MCP server architecture allows for your agent to connect to a variety of tools.

architecture diagram of the dbt MCP server

Tools

SQL

Tools for executing and generating SQL on dbt Platform infrastructure.

  • execute_sql: Executes SQL on dbt Platform infrastructure with Semantic Layer support.
  • text_to_sql: Generates SQL from natural language using project context.

Semantic Layer

To learn more about the dbt Semantic Layer, click here.

  • get_dimension_values: Gets distinct values for a dimension; option to scope to specific metrics.
  • get_dimensions: Gets dimensions for specified metrics.
  • get_entities: Gets entities for specified metrics.
  • get_metrics_compiled_sql: Returns compiled SQL for metrics without executing the query.
  • list_metrics: Retrieves all defined metrics.
  • list_saved_queries: Retrieves all saved queries.
  • query_metrics: Executes metric queries with filtering and grouping options.

Discovery

To learn more about the dbt Discovery API, click here.

  • get_all_macros: Retrieves macros; option to filter by package or return package names only.
  • get_all_models: Retrieves name and description of all models.
  • get_all_sources: Gets all sources with freshness status; option to filter by source name.
  • get_exposure_details: (deprecated — use get_node_details instead)
  • get_exposures: Gets all exposures (downstream dashboards, apps, or analyses).
  • get_lineage: Gets a bounded lineage graph with type, depth, and direction filtering.
  • get_macro_details: (deprecated — use get_node_details instead)
  • get_mart_models: Retrieves all mart models.
  • get_model_children: (deprecated — use get_lineage instead)
  • get_model_details: (deprecated — use get_node_details instead)
  • get_model_health: Gets health signals: run status, test results, and upstream source freshness.
  • get_model_parents: (deprecated — use get_lineage instead)
  • get_model_performance: Gets execution history for a model; option to include test results.
  • get_node_details: Gets full details for any dbt resource type (model, source, exposure, test, seed, snapshot, macro, semantic_model).
  • get_related_models: Finds similar models using semantic search.
  • get_seed_details: (deprecated — use get_node_details instead)
  • get_semantic_model_details: (deprecated — use get_node_details instead)
  • get_snapshot_details: (deprecated — use get_node_details instead)
  • get_source_details: (deprecated — use get_node_details instead)
  • get_test_details: (deprecated — use get_node_details instead)
  • search: [Alpha] Searches for resources across the dbt project (not generally available).

dbt CLI

Allowing your client to utilize dbt commands through the MCP tooling could modify your data models, sources, and warehouse objects. Proceed only if you trust the client and understand the potential impact.

  • build: Executes models, tests, snapshots, and seeds in DAG order.
  • clone: Clones selected nodes from the specified state to the target schema(s).
  • compile: Generates executable SQL from models/tests/analyses; useful for validating Jinja logic.
  • docs: Generates documentation for the dbt project.
  • get_lineage_dev: Retrieves lineage from local manifest.json with type and depth filtering.
  • get_node_details_dev: Retrieves node details from local manifest.json (models, seeds, snapshots, sources).
  • list: Lists resources in the dbt project by type with selector support.
  • parse: Parses and validates project files for syntax correctness.
  • run: Executes models to materialize them in the database.
  • show: Executes SQL against the database and returns results.
  • test: Runs tests to validate data and model integrity.

Admin API

To learn more about the dbt Administrative API, click here.

  • cancel_job_run: Cancels a running job.
  • get_job_details: Gets job configuration including triggers, schedule, and dbt commands.
  • get_job_run_artifacts: Downloads a specific artifact from a job run; large artifacts return a guidance message to retry with a jq_filter; supports jq filtering for targeted extraction.
  • get_job_run_details: Gets run details including status, timing, steps, and artifacts.
  • get_job_run_error: Gets error and/or warning details for a job run; option to include or show warnings only.
  • list_job_run_artifacts: Lists available artifacts from a job run.
  • list_jobs: Lists jobs in a dbt Platform account; option to filter by project or environment.
  • list_jobs_runs: Lists job runs; option to filter by job, status, or order by field.
  • list_projects: Lists all projects in the dbt Platform account.
  • retry_job_run: Retries a failed job run.
  • trigger_job_run: Triggers a job run; option to override git branch, schema, or other settings.

dbt Codegen

These tools help automate boilerplate code generation for dbt project files.

  • generate_model_yaml: Generates model YAML with columns; option to inherit upstream descriptions.
  • generate_source: Generates source YAML by introspecting database schemas; option to include columns.
  • generate_staging_model: Generates staging model SQL from a source table.

dbt LSP

A set of tools that leverage the Fusion engine for advanced SQL compilation and column-level lineage analysis.

  • fusion.compile_sql: Compiles SQL in project context via dbt Platform.
  • fusion.get_column_lineage: Traces column-level lineage via dbt Platform.
  • get_column_lineage: Traces column-level lineage locally (requires dbt-lsp via dbt Labs VSCE).

Product Docs

Tools for searching and fetching content from the official dbt documentation at docs.getdbt.com.

  • get_product_doc_pages: Fetches the full Markdown content of one or more docs.getdbt.com pages by path or URL.
  • search_product_docs: Searches docs.getdbt.com for pages matching a query; returns titles, URLs, and descriptions ranked by relevance. Use get_product_doc_pages to fetch full content.

MCP Server Metadata

These tools provide information about the MCP server itself.

  • get_mcp_server_branch: Returns the current git branch of the running dbt MCP server.
  • get_mcp_server_version: Returns the current version of the dbt MCP server.

Examples

Commonly, you will connect the dbt MCP server to an agent product like Claude or Cursor. However, if you are interested in creating your own agent, check out the examples directory for how to get started.

Dependencies

Dependencies are pinned to specific versions and are not updated automatically. Only security-related dependency updates are submitted via automated pull requests.

Contributing

Read CONTRIBUTING.md for instructions on how to get involved!