A MCP (Model Context Protocol) server for interacting with dbt.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
tools
-
build
Executes models, tests, snapshots, and seeds in DAG order.
-
cancel_job_run
Cancels a running job.
-
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.
-
execute_sql
Executes SQL on dbt Platform infrastructure with Semantic Layer support.
-
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.
-
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_column_lineage
Traces column-level lineage locally (requires dbt-lsp via dbt Labs VSCE).
-
get_dimensions
Gets dimensions for specified metrics.
-
get_entities
Gets entities for specified metrics.
-
get_exposure_details
Gets exposure details including owner, parents, and freshness status.
-
get_exposures
Gets all exposures (downstream dashboards, apps, or analyses).
-
get_job_details
Gets job configuration including triggers, schedule, and dbt commands.
-
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.
-
get_lineage
Gets full lineage graph (ancestors and descendants) with type and depth filtering.
-
get_lineage_dev
Retrieves lineage from local manifest.json with type and depth filtering.
-
get_macro_details
Gets details for a specific macro.
-
get_mart_models
Retrieves all mart models.
-
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.
-
get_metrics_compiled_sql
Returns compiled SQL for metrics without executing the query.
-
get_model_children
Gets downstream dependents of a model.
-
get_model_details
Gets model details including compiled SQL, columns, and schema.
-
get_model_health
Gets health signals: run status, test results, and upstream source freshness.
-
get_model_parents
Gets upstream dependencies of a model.
-
get_model_performance
Gets execution history for a model; option to include test results.
-
get_node_details_dev
Retrieves node details from local manifest.json (models, seeds, snapshots, sources).
-
get_product_doc_pages
Fetches the full Markdown content of one or more docs.getdbt.com pages by path or URL.
-
get_related_models
Finds similar models using semantic search.
-
get_seed_details
Gets details for a specific seed.
-
get_semantic_model_details
Gets details for a specific semantic model.
-
get_snapshot_details
Gets details for a specific snapshot.
-
get_source_details
Gets source details including columns and freshness.
-
get_test_details
Gets details for a specific test.
-
list
Lists resources in the dbt project by type with selector support.
-
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_metrics
Retrieves all defined metrics.
-
list_projects
Lists all projects in the dbt Platform account.
-
list_saved_queries
Retrieves all saved queries.
-
parse
Parses and validates project files for syntax correctness.
-
query_metrics
Executes metric queries with filtering and grouping options.
-
retry_job_run
Retries a failed job run.
-
run
Executes models to materialize them in the database.
-
search
[Alpha] Searches for resources across the dbt project (not generally available).
-
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.
-
show
Executes SQL against the database and returns results.
-
test
Runs tests to validate data and model integrity.
-
text_to_sql
Generates SQL from natural language using project context.
-
trigger_job_run
Triggers a job run; option to override git branch, schema, or other settings.
analyzed commit 6622aa4 · analyzer v18 · 11h ago
skills & prompt files 3
filesystem 14
- fs dbt-labs-dbt-mcp-6622aa4/scripts/generate_docs.py :5
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/scripts/sync_manifest_version.py :14
with open(MANIFEST_PATH, "r+") as f: - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/config/credentials.py :6
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/config/dbt_yaml.py :1
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/config/elicitation.py :7
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/config/settings.py :2
import shutil - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/dbt_cli/tools.py :330
with open(manifest_path, encoding="utf-8") as f: - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/lsp/lsp_binary_manager.py :10
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/mcp_server_metadata/tools.py :6
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/oauth/context_manager.py :2
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/oauth/login.py :73
webbrowser.open(authorization_url) - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/prompts/prompts.py :1
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/telemetry/logging.py :4
from pathlib import Path - fs dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/tracking/tracking.py :8
from pathlib import Path
shell / exec 6
- shell dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/dbt_cli/binary_type.py :2
import subprocess - shell dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/dbt_cli/tools.py :3
import subprocess - shell dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/dbt_codegen/tools.py :3
import subprocess - shell dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/lsp/lsp_binary_manager.py :13
import subprocess - shell dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/lsp/lsp_connection.py :12
import subprocess - shell dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/mcp_server_metadata/tools.py :4
import subprocess
network 9
- net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/config/credentials.py :3
import socket - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/dbt_admin/client.py :7
import httpx - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/discovery/client.py :6
import httpx - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/lsp/lsp_connection.py :11
import socket - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/oauth/fastapi_app.py :3
from urllib.parse import quote - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/product_docs/client.py :15
import httpx - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/product_docs/tools.py :17
import httpx - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/project/project_resolver.py :5
import httpx - net dbt-labs-dbt-mcp-6622aa4/src/dbt_mcp/semantic_layer/gql/gql_request.py :1
import httpx
secrets 1
- secrets dbt-labs-dbt-mcp-6622aa4/src/remote_mcp/session.py :23
token = os.environ.get("DBT_TOKEN")
declared dependencies 2
- authlib@~=1.6.7
- dbt-protos@~=1.0.431