Dbt MCP Server
Dbt projects provide AI agents access to SQL execution and semantic layer metrics.
Data last scanned today · Reviewed today
Overview
This MCP server enables AI agents to interact directly with dbt projects by providing access to infrastructure tools and the dbt Semantic Layer. It facilitates natural language-to-SQL generation and allows agents to retrieve metrics, dimensions, and entity definitions from dbt-managed platforms. Beyond semantic layer operations, the server offers discovery capabilities for dbt projects. Users can query model metadata, analyze lineage graphs, inspect source freshness, and list defined macros. Experimental support for MCP bundles is also included to streamline installation for compatible clients.
Our verdict
With a security score of 45/100, this server is currently classified as high risk. The security architecture remains largely unverified, specifically regarding the review status of read-only modes, OAuth, and general authentication methods. Because these critical security interfaces have not been editorially reviewed, this tool should be used with caution in sensitive data environments and is currently better suited for development or testing contexts rather than production deployment.
- Supports zero direct dependencies to minimize supply-chain surface
- Active development with commits as recent as three days ago
- Maintained by 44 contributors to help reduce bus-factor risk
- Includes real documentation for tool setup and usage
- Security score of 45/100 indicates high risk
- Authentication methods have not yet been editorially reviewed
- Read-only mode and OAuth support lack verification
- Project status is community-maintained rather than official vendor-led
Tools
| Tool | Description | Risk |
|---|---|---|
| execute_sql | Executes SQL on dbt Platform infrastructure with Semantic Layer support. | high |
| text_to_sql | Generates SQL from natural language using project context. | low |
| get_dimension_values | Gets distinct values for a dimension; option to scope to specific metrics. | low |
| get_dimensions | Gets dimensions for specified metrics. | low |
| get_entities | Gets entities for specified metrics. | low |
| get_metrics_compiled_sql | Returns compiled SQL for metrics without executing the query. | low |
| list_metrics | Retrieves all defined metrics. | low |
| list_saved_queries | Retrieves all saved queries. | low |
| query_metrics | Executes metric queries with filtering and grouping options. | medium |
| get_all_macros | Retrieves macros; option to filter by package or return package names only. | low |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| ChatGPT | ||||
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf |
Frequently asked questions
›How can I set up this server without manual configuration?
You can download the experimental dbt-mcp.mcpb bundle from the latest release assets and use the Anthropic mcpb CLI to install or inspect it.
›What happens if I use the dbt CLI tools provided by this server?
The dbt CLI tools can modify your data models, sources, and warehouse objects, so you should only use them if you trust the connected client and understand the potential impact.
›Are there deprecated tools I should avoid using?
Yes, several discovery tools like get_model_children, get_model_parents, and various specific detail functions have been deprecated in favor of more general tools like get_lineage or get_node_details.
›Does this server support local project files?
Yes, the server includes specific tools like get_lineage_dev and get_node_details_dev which retrieve information directly from a local manifest.json file.
›Where can I find support or provide feedback?
You can create a GitHub Issue or join the community Slack and participate in the #tools-dbt-mcp channel.
Changelog
Badge
Maintain this server? Add the live badge to your README.