Semantic Layer
Turn Your dbt Project Into a Semantic Layer for Agents
Draft placeholder. Full article coming soon.
You already have dbt models, tests, and a manifest. This post will show how to turn that into a governed semantic layer agents can query, without rebuilding your stack.
What this will cover
- Reading your dbt manifest to bootstrap metrics and relationships
- Defining metrics once so every consumer gets the same number
- Tagging the tenant key that scopes each customer’s rows
- Exposing governed metrics to agents over MCP
- Charting the agent’s query results in Claude or ChatGPT with
@bonnard/mcp-charts
Frequently asked questions
Do I need to migrate off dbt?
No. A semantic layer reads your existing dbt models. You keep dbt as your transformation layer.
What if I only have models, not a semantic layer?
That’s the common case. You bootstrap from the manifest and define metrics on top.
How do agents chart the results?
Add a visualize tool to your MCP server with @bonnard/mcp-charts. The agent queries a metric, your runSql returns the rows, and an interactive chart renders in Claude or ChatGPT. Bonnard never touches your database. See the MCP Charts guide.