dbt-docs-mcp logo

dbt-docs-mcp

by mattijsdp

dbt-docs-mcp is a Model Context Protocol (MCP) server designed to interact with dbt project metadata, including dbt Docs artifacts. It exposes dbt graph information and allows querying node details, model/column lineage, and related metadata.

View on GitHub

Last updated: N/A

What is dbt-docs-mcp?

dbt-docs-mcp is a server that provides an interface to explore and query dbt project metadata, including manifest and catalog files. It enables users to understand the relationships between dbt models, sources, and tests, as well as column-level lineage.

How to use dbt-docs-mcp?

To use the server, clone the repository, optionally parse the dbt manifest for column-level lineage using the provided script, and then run the server. Configure your MCP client (e.g., Claude desktop, Cursor) to point to the server endpoint.

Key features of dbt-docs-mcp

  • Search dbt Nodes by name, column name, or SQL code

  • Inspect detailed attributes for any dbt node

  • Explore upstream and downstream dependencies (lineage) of a node

  • Trace column-level lineage (ancestors and descendants)

Use cases of dbt-docs-mcp

  • Data governance and lineage tracking

  • Impact analysis of changes to dbt models

  • Debugging data quality issues

  • Understanding data dependencies for reporting and analytics

FAQ from dbt-docs-mcp

What is the purpose of the schema_mapping.json file?

The schema_mapping.json file maps schemas in your dbt project to their corresponding database schemas, which is used for column-level lineage.

How long does it take to create column-lineage?

Depending on the size of your dbt project, creating column-lineage can take a while (hours).

What MCP clients are compatible with dbt-docs-mcp?

Any MCP client that supports mcp.json format can be used, such as Claude desktop or Cursor.

What dbt artifacts are required to run dbt-docs-mcp?

The server requires the dbt manifest.json and catalog.json files.

Can I execute SQL queries directly through this server?

The server does not natively support SQL query execution, but suggested extensions include a tool for executing SQL queries.