dbt-doctor
dbt-doctor is a Python Model Context Protocol (MCP) server that connects an AI assistant to a dbt project to audit project quality, profile warehouse data, detect schema drift vs manifest.json, suggest dbt tests, and update schema.yml non-destructively via ruamel.yaml.
Score Breakdown
⚙ Agent Friendliness
🔒 Security
Security design claims: read-only execution for `execute_query`, SQL identifier validation against a whitelist to reduce injection risk, stateless connections where credentials are instantiated per connection and not cached, and a preview before rewriting schema.yml. However, detailed auth/access control for the MCP server is not described, and the dependency list is limited without evidence of vulnerability status.
⚡ Reliability
Best When
You want an AI-assisted, conversational workflow for dbt project auditing and schema.yml governance using MCP, with access to a reachable data warehouse and a compiled dbt target/manifest.json.
Avoid When
You cannot allow read-only warehouse querying or schema.yml rewriting (even if non-destructive/append-only), or you require a standard HTTP API surface with OpenAPI/SDKs rather than MCP.
Use Cases
- • Assess overall dbt project health (documentation/testing/naming)
- • Rank models by test coverage and identify gaps
- • Profile a model/columns in the data warehouse (null rates, cardinality, min/max, uniqueness)
- • Detect schema drift by comparing warehouse columns to manifest definitions
- • Generate/merge schema.yml updates and documentation suggestions
- • Create actionable dbt test recommendations based on profiling statistics
Not For
- • Running write operations to the warehouse or modifying database schema/data
- • Production governance workflows that require strict SLAs or formally documented operational guarantees
- • Organizations needing a REST/GraphQL API or prebuilt SDKs instead of MCP
Interface
Authentication
No user-facing auth mechanism described for the MCP server itself. Access control appears to rely on local execution and the underlying warehouse connector configuration provided by the dbt project environment.
Pricing
Open-source (MIT) package; pricing not described.
Agent Metadata
Known Gotchas
- ⚠ Requires `dbt compile` prior to usage so `target/manifest.json` exists.
- ⚠ `execute_query` depends on being able to perform read-only SQL against the configured warehouse; failures likely occur if credentials/network permissions are missing.
- ⚠ YAML updates depend on having writable access to schema.yml files; ensure filesystem permissions and review diffs before commit.
- ⚠ Tool coverage: only the listed MCP tools are described; if the assistant requests additional operations, capability gaps may surface as errors.
Alternatives
Full Evaluation Report
Comprehensive deep-dive: security analysis, reliability audit, agent experience review, cost modeling, competitive positioning, and improvement roadmap for dbt-doctor.
AI-powered analysis · PDF + markdown · Delivered within 30 minutes
Package Brief
Quick verdict, integration guide, cost projections, gotchas with workarounds, and alternatives comparison.
Delivered within 10 minutes
Score Monitoring
Get alerted when this package's AF, security, or reliability scores change significantly. Stay ahead of regressions.
Continuous monitoring
Scores are editorial opinions as of 2026-03-30.