There is no warehouse, and you do not want one yet
The join across Postgres, MySQL and SQLite happens in a staging database created for that one execution and destroyed with it. Nothing is loaded anywhere first, so there is nothing to keep in sync.
No warehouse required · sources read in place · agent as author
Honest comparison
The short version: if your data is already in a warehouse and the job is to model it, use dbt. Its whole design — models as SELECT statements, lineage from references, tests and generated docs — assumes one warehouse that everything has already been loaded into. We assume the opposite: the data is still in the operational databases it was written to, and the question crosses them.
Read this first
The other case
The join across Postgres, MySQL and SQLite happens in a staging database created for that one execution and destroyed with it. Nothing is loaded anywhere first, so there is nothing to keep in sync.
Eight dialects, each with its own adapter and type mapping — the databases your applications actually write to, not a warehouse they were exported into.
Introspect, create a template, create a pipeline, execute, read rows — the whole loop over MCP tools. dbt's authoring surface is a repository and a CLI, which is a different shape of collaboration.
Read-only datasources enforced at save and at execution, one scoped revocable key per agent, and an audit log entry for every tool call.
ref(), no automatic lineage graph across models, no generated documentation site.The Airflow comparison → · The cross-database join → · Supported dialects →
Asked before
No — and that is the fork with dbt. The join across Postgres, MySQL and SQLite happens in a staging database created for that one execution and destroyed with it; nothing is loaded anywhere first. Staging is docs/staging.md §1.
The operational databases applications write to — the dialect catalog covers eight dialects: the seven remote JDBC engines plus the lake's Parquet and Iceberg — each with its own adapter and type mapping, read where they live. The catalog is docs/datasources.md §4.1.
That is the intended shape: introspect, create a template, create a pipeline, execute, read rows — the whole loop over MCP tools, with a person releasing what the agent drafts. dbt's authoring surface is a repository and a CLI, a different shape of collaboration. The tools are docs/mcp-server.md §6.1.
Read-only datasources whose write-shaped uses are refused at save time and again at execution, one scoped revocable key per agent, and an audit log entry for every tool call — the checks an agent-facing warehouse pipeline needs. The read-only flag is docs/datasources.md §5.7.
The demo joins Postgres, MySQL, SQLite and Parquet on S3 in one pipeline — the workload dbt would need a warehouse in front of, run without one.