Back to Catalog

dbt-docs-mcp

mattijsdp/dbt-docs-mcp
🔗 Latest commit:c8137b3
🕒 Updated:Aug 4, 2025, 09:34 AM
Python
Data

MCP (model context protocol) server for interacting with dbt Docs

MCP Trust Score
Based on our comprehensive evaluation criteria
🤖 Evaluated by gemini-2.5-flashFix
Trust Score52/100
GitHub Metrics
Repository statistics and activity
⭐ GitHub Stars:12
👥 Contributors:2
📋 Total Issues:0
📦 Has Releases:Yes
🔧 Has CI/CD Pipeline:Yes
MCP Protocol Support
Implemented MCP protocol features
🤖 Evaluated by gemini-2.5-flashFix
Tools:
Prompts:
Resources:
Sampling:
Roots:
Logging:
STDIO Transport:
HTTP Transport:
OAuth2 Auth:
Dependencies
8 dependencies
Libraries and frameworks used by this MCP server
🤖 Evaluated by gemini-2.5-flashFix
Configuration
Configuration example extracted from README.md for Claude Desktop and other clients.
🤖 Evaluated by gemini-2.5-flashFix
{
  "mcpServers": {
    "dbt-docs-mcp": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "networkx,mcp[cli],rapidfuzz,dbt-core,python-decouple,sqlglot,tqdm",
        "mcp",
        "run",
        "/Users/mattijs/repos/dbt-docs-mcp/src/mcp_server.py"
      ],
      "env": {
        "MANIFEST_PATH": "/Users/mattijs/repos/dbt-docs-mcp/inputs/manifest.json",
        "SCHEMA_MAPPING_PATH": "/Users/mattijs/repos/dbt-docs-mcp/outputs/schema_mapping.json",
        "MANIFEST_CL_PATH": "/Users/mattijs/repos/dbt-docs-mcp/outputs/manifest_column_lineage.json"
      }
    }
  }
}
Add Quality Badge
Show your MCP trust score in your README
Trust Score Badge
[![Trust Score](https://archestra.ai/mcp-catalog/api/badge/quality/mattijsdp/dbt-docs-mcp)](https://archestra.ai/mcp-catalog/mattijsdp__dbt-docs-mcp)
README.md

Verified on MseeP

dbt-docs-mcp

Model Context Protocol (MCP) server for interacting with dbt project metadata, including dbt Docs artifacts (manifest.json, catalog.json). This server exposes dbt graph information and allows querying node details, model/column lineage, and related metadata.

Key Functionality

This server provides tools to:

  • Search dbt Nodes:
    • Find nodes (models, sources, tests, etc.) by name (search_dbt_node_names).
    • Locate nodes based on column names (search_dbt_column_names).
    • Search within the compiled SQL code of nodes (search_dbt_sql_code).
  • Inspect Nodes:
    • Retrieve detailed attributes for any given node unique ID (get_dbt_node_attributes).
  • Explore Lineage:
    • Find direct upstream dependencies (predecessors) of a node (get_dbt_predecessors).
    • Find direct downstream dependents (successors) of a node (get_dbt_successors).
  • Column-Level Lineage:
    • Trace all upstream sources for a specific column in a model (get_column_ancestors).
    • Trace all downstream dependents of a specific column in a model (get_column_descendants).
  • Suggested extensions:
    • Tool that allows executing SQL queries.
    • Tool that retrieves table/view/column metadata directly from the database.
    • Tool to search knowledge-base.

Getting Started

  1. Prerequisites: Ensure you have Python installed and uv
  2. Clone the repo:
    git clone <repository-url>
    cd dbt-docs-mcp
    
  3. Optional: parse dbt manifest for column-level lineage:
    • Setup the required Python environment, e.g.:
    uv sync
    
    • Use the provided script scripts/create_manifest_cl.py and simply provide the path to your dbt manifest, dbt catalog and the desired output paths for your schema and column lineage file:
    python scripts/create_manifest_cl.py --manifest-path PATH_TO_YOUR_MANIFEST_FILE --catalog-path PATH_TO_YOUR_CATALOG_FILE --schema-mapping-path DESIRED_OUTPUT_PATH_FOR_SCHEMA_MAPPING --manifest-cl-path DESIRED_OUTPUT_PATH_FOR_MANIFEST_CL
    
    • Depending on your dbt project size, creating column-lineage can take a while (hours)
  4. Run the Server:
    • If your desired MCP client (Claude desktop, Cursor, etc.) supports mcp.json it would look as below:
    {
        "mcpServers": {
            "DBT Docs MCP": {
            "command": "uv",
            "args": [
                "run",
                "--with",
                "networkx,mcp[cli],rapidfuzz,dbt-core,python-decouple,sqlglot,tqdm",
                "mcp",
                "run",
                "/Users/mattijs/repos/dbt-docs-mcp/src/mcp_server.py"
            ],
            "env": {
                "MANIFEST_PATH": "/Users/mattijs/repos/dbt-docs-mcp/inputs/manifest.json",
                "SCHEMA_MAPPING_PATH": "/Users/mattijs/repos/dbt-docs-mcp/outputs/schema_mapping.json",
                "MANIFEST_CL_PATH": "/Users/mattijs/repos/dbt-docs-mcp/outputs/manifest_column_lineage.json"
            }
            }
        }
    }
    
dbt-docs-mcp MCP Server | Documentation & Integration | Archestra