{"data":{"slug":"dbt-labs-dbt-mcp","name":"dbt-mcp","tagline":"A MCP server for interacting with dbt","github_url":"https://github.com/dbt-labs/dbt-mcp","owner":"dbt-labs","repo":"dbt-mcp","owner_avatar_url":"https://avatars.githubusercontent.com/u/18339788?v=4","primary_language":"Python","stars":609,"forks":134,"topics":["data-analytics","data-engineering","dbt","llm","mcp","mcp-server","model-context-protocol"],"archived":false,"github_pushed_at":"2026-09-19T02:26:34+00:00","maintenance_label":"Very active","stars_delta_30d":14,"url":"https://www.graphcanon.com/tools/dbt-labs-dbt-mcp","markdown_url":"https://www.graphcanon.com/tools/dbt-labs-dbt-mcp.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/dbt-labs-dbt-mcp","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=dbt-labs-dbt-mcp","description":"A MCP (Model Context Protocol) server for interacting with dbt.","homepage_url":null,"license":"Apache-2.0","open_issues":49,"watchers":12,"ai_summary":"dbt-labs/dbt-mcp provides an implementation of the Model Context Protocol (MCP) server designed to facilitate interactions with dbt.","readme_excerpt":"# dbt MCP Server\n\n\nThis 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.\n\nRead our documentation [here](https://docs.getdbt.com/docs/dbt-ai/about-mcp) to learn more. [This](https://docs.getdbt.com/blog/introducing-dbt-mcp-server) blog post provides more details for what is possible with the dbt MCP server.\n\n## Experimental MCP Bundle\n\nWe 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](https://github.com/modelcontextprotocol/mcpb) docs to install or inspect it.\n\n## Feedback\n\nIf you have comments or questions, create a GitHub Issue or join us in [the community Slack](https://www.getdbt.com/community/join-the-community) in the `#tools-dbt-mcp` channel.\n\n\n## Architecture\n\nThe dbt MCP server architecture allows for your agent to connect to a variety of tools.\n\n\n\n## Tools\n\n### SQL\n\nTools for executing and generating SQL on dbt Platform infrastructure.\n- `execute_sql`: Executes SQL on dbt Platform infrastructure with Semantic Layer support.\n- `text_to_sql`: Generates SQL from natural language using project context.\n\n### Semantic Layer\n\nTo learn more about the dbt Semantic Layer, click [here](https://docs.getdbt.com/docs/use-dbt-semantic-layer/dbt-sl).\n- `get_dimension_values`: Gets distinct values for a dimension; option to scope to specific metrics.\n- `get_dimensions`: Gets dimensions for specified metrics.\n- `get_entities`: Gets entities for specified metrics.\n- `get_metrics_compiled_sql`: Returns compiled SQL for metrics without executing the query.\n- `list_metrics`: Retrieves all defined metrics.\n- `list_saved_queries`: Retrieves all saved queries.\n- `query_metrics`: Executes metric queries with filtering and grouping options.\n\n### Discovery\n\nTo learn more about the dbt Discovery API, click [here](https://docs.getdbt.com/docs/dbt-cloud-apis/discovery-api).\n- `get_all_macros`: Retrieves macros; option to filter by package or return package names only.\n- `get_all_models`: Retrieves name and description of all models.\n- `get_all_sources`: Gets all sources with freshness status; option to filter by source name.\n- `get_exposure_details`: *(deprecated — use `get_node_details` instead)*\n- `get_exposures`: Gets all exposures (downstream dashboards, apps, or analyses).\n- `get_lineage`: Gets full lineage graph (ancestors and descendants) with type and depth filtering.\n- `get_macro_details`: *(deprecated — use `get_node_details` instead)*\n- `get_mart_models`: Retrieves all mart models.\n- `get_model_children`: *(deprecated — use `get_lineage` instead)*\n- `get_model_details`: *(deprecated — use `get_node_details` instead)*\n- `get_model_health`: Gets health signals: run status, test results, and upstream source freshness.\n- `get_model_parents`: *(deprecated — use `get_lineage` instead)*\n- `get_model_performance`: Gets execution history for a model; option to include test results.\n- `get_node_details`: Gets full details for any dbt resource type (model, source, exposure, test, seed, snapshot, macro, semantic_model).\n- `get_related_models`: Finds similar models using semantic search.\n- `get_seed_details`: *(deprecated — use `get_node_details` instead)*\n- `get_semantic_model_details`: *(deprecated — use `get_node_details` instead)*\n- `get_snapshot_details`: *(deprecated — use `get_node_details` instead)*\n- `get_source_details`: *(deprecated — use `get_node_details` instead)*\n- `get_test_details`: *(deprecated — use `get_node_details` instead)*\n- `search`: [Alpha] Searches for resources across the dbt project (not generally available).\n\n### dbt CLI\n\nAllowing your client to utilize dbt commands through the MCP tooling could modify your data models, sources, and warehouse objects. Proceed only if yo","github_created_at":"2025-03-12T20:13:12+00:00","created_at":"2026-07-11T11:55:14.545883+00:00","updated_at":"2026-09-20T06:46:58.294823+00:00","categories":[{"slug":"data-retrieval","name":"Data & Retrieval","url":"https://www.graphcanon.com/categories/data-retrieval","markdown_url":"https://www.graphcanon.com/categories/data-retrieval.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/data-retrieval"}],"tags":[{"slug":"data-analytics","name":"data-analytics"},{"slug":"data-engineering","name":"data-engineering"},{"slug":"dbt","name":"dbt"},{"slug":"llm","name":"llm"},{"slug":"mcp","name":"mcp"},{"slug":"model-context-protocol","name":"model-context-protocol"}],"trust":{"provenance":{"is_fork":false,"github_id":947516890,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-20T06:46:55.493Z","maintenance":{"label":"Very active","score":96,"methodology":"github_public_v1","releases_90d":13,"days_since_push":1,"last_release_at":"2026-09-11T22:12:59Z","stars_delta_30d":14,"open_issues_delta_30d":14},"security_summary":{"status":"no_manifest","scanner":null,"low_count":0,"high_count":0,"last_scan_at":"2026-07-11T11:55:15.831Z","medium_count":0,"scan_profile":"mcp_manifest","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-09-20T06:46:56.758Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-20T06:46:56.758Z","managed_saas":false},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-09-20T06:46:56.758Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-20T06:46:56.758Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-20T06:46:56.758Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-09-20T06:46:56.758Z"}},"decision_facts":{"hosting":null,"pricing":{"model":"freemium","summary":"Freely available with no direct cost, ideal for projects without budget constraints but seeking flexibility."},"requirements":{"notes":["Ensure you have Python and dbt installed to utilize dbt-mcp effectively.","Advanced knowledge of data engineering and analytics best practices is required to make the most out of dbt-mcp's MCP capabilities."],"requires_docker":false},"constraints":{"pricing_model":"freemium","requires_docker":false},"when_to_use":["You are working with dbt and need to implement the Model Context Protocol (MCP) for more precise project management.","Your team prefers Python as the programming language for deploying MCP servers connected to dbt projects."],"when_not_to_use":["If your project does not require interaction through the Model Context Protocol with dbt, opting for a generic data processing tool might be simpler and less resource-intensive.","When the primary goal is model training or prediction without focusing on dbt workflow management via MCP, alternative tools may serve better."],"source":"enrich:decision_facts","observed_at":"2026-07-16T19:22:03.085Z"},"constraint_facets":{"pricing_model":"freemium","requires_docker":false},"decision_summary":[{"label":"Pricing","value":"freemium - Freely available with no direct cost, ideal for projects without budget constraints but seeking flexibility."},{"label":"Requirements","value":"Ensure you have Python and dbt installed to utilize dbt-mcp effectively.; Advanced knowledge of data engineering and analytics best practices is required to make the most out of dbt-mcp's MCP capabilities."},{"label":"Adopt for","value":"dbt-mcp offers a specialized MCP server for dbt interaction, supporting data analytics and engineering tasks in Python under the Apache-2.0 license."},{"label":"License detail","value":"dbt-mcp operates under the permissive Apache-2.0 license which allows free use for both commercial and non-commercial purposes."}]}}