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. This server provides tools to: Search dbt Nodes: Find nodes (models, sources, tests, etc.) by name (searchdbtnodenames). Locate nodes based o
Add this skill
npx mdskills install mattijsdp/dbt-docs-mcpWell-documented MCP server for dbt lineage with comprehensive node and column-level tools
1[](https://mseep.ai/app/ad4aaf73-63ce-42e0-b27c-8541ae1fbab8)23[](https://archestra.ai/mcp-catalog/mattijsdp__dbt-docs-mcp)45# dbt-docs-mcp67Model 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.89## Key Functionality1011This server provides tools to:1213* **Search dbt Nodes:**14 * Find nodes (models, sources, tests, etc.) by name (`search_dbt_node_names`).15 * Locate nodes based on column names (`search_dbt_column_names`).16 * Search within the compiled SQL code of nodes (`search_dbt_sql_code`).17* **Inspect Nodes:**18 * Retrieve detailed attributes for any given node unique ID (`get_dbt_node_attributes`).19* **Explore Lineage:**20 * Find direct upstream dependencies (predecessors) of a node (`get_dbt_predecessors`).21 * Find direct downstream dependents (successors) of a node (`get_dbt_successors`).22* **Column-Level Lineage:**23 * Trace all upstream sources for a specific column in a model (`get_column_ancestors`).24 * Trace all downstream dependents of a specific column in a model (`get_column_descendants`).25* **Suggested extensions:**26 * Tool that allows executing SQL queries.27 * Tool that retrieves table/view/column metadata directly from the database.28 * Tool to search knowledge-base.2930## Getting Started31321. **Prerequisites:** Ensure you have Python installed and [uv](https://docs.astral.sh/uv/)332. **Clone the repo:**34 ```bash35 git clone <repository-url>36 cd dbt-docs-mcp37 ```383. **Optional: parse dbt manifest for column-level lineage:**39 - Setup the required Python environment, e.g.:40 ```bash41 uv sync42 ```43 - 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:44 ```bash45 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_CL46 ```47 - Depending on your dbt project size, creating column-lineage can take a while (hours)484. **Run the Server:**49 - If your desired MCP client (Claude desktop, Cursor, etc.) supports mcp.json it would look as below:50 ```json51 {52 "mcpServers": {53 "DBT Docs MCP": {54 "command": "uv",55 "args": [56 "run",57 "--with",58 "networkx,mcp[cli],rapidfuzz,dbt-core,python-decouple,sqlglot,tqdm",59 "mcp",60 "run",61 "/Users/mattijs/repos/dbt-docs-mcp/src/mcp_server.py"62 ],63 "env": {64 "MANIFEST_PATH": "/Users/mattijs/repos/dbt-docs-mcp/inputs/manifest.json",65 "SCHEMA_MAPPING_PATH": "/Users/mattijs/repos/dbt-docs-mcp/outputs/schema_mapping.json",66 "MANIFEST_CL_PATH": "/Users/mattijs/repos/dbt-docs-mcp/outputs/manifest_column_lineage.json"67 }68 }69 }70 }71 ```72
Full transparency — inspect the skill content before installing.