motherduck-build-data-pipeline
About motherduck-build-data-pipeline
A skill for designing and implementing data pipelines with MotherDuck. It structures work from raw ingestion through staging and analytics outputs, with validation before publishing downstream assets.
Key features
- 01Define raw, staging, and analytics layers
- 02Select ingestion methods
- 03Build transformation sequences
- 04Create serving tables or views
- 05Validate freshness, counts, and metrics
Use cases
- 01Plan a MotherDuck data pipeline
- 02Organize pipeline stages and transformations
- 03Validate outputs before publishing
MCP support
Uses an active remote or local MotherDuck MCP server to inspect source and target data context; recommends MCP for chat-only operation.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ motherduckdb/ agent-skills --skill motherduck-build-data-pipelineAfter installing, type/motherduck-build-data-pipelinein Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
artifacts/pipeline_stage_example.pypipeline_stage_example.tsreferences/EXECUTION_REFERENCE.mdPIPELINE_IMPLEMENTATION_GUIDE.mdreferences/dlt-dbt-motherduck-project/.env.example.gitignore.user.ymldbt_project.ymlprofiles.ymlpyproject.tomlREADME.mduv.lockreferences/dlt-dbt-motherduck-project/data/customers.jsonlorders.jsonlreferences/dlt-dbt-motherduck-project/macros/generate_schema_name.sqlreferences/dlt-dbt-motherduck-project/models/marts/fct_customer_revenue.sqlmarts.ymlreferences/dlt-dbt-motherduck-project/models/staging/sources.ymlstaging.ymlstg_customers.sqlstg_orders.sqlreferences/dlt-dbt-motherduck-project/pipeline/__init__.pybootstrap.pycleanup.pyload_raw.pyrun_all.pysettings.pyvalidate.pyDetails
From the project READMEBuild a Data Pipeline with MotherDuck
Start Here: Is a MotherDuck Server Active?
Use an active remote MotherDuck MCP server or local MotherDuck server to inspect the in-scope database, schema, grain, keys, and relevant metrics. Reuse known context and narrow discovery to the requested work; do not scan the whole workspace by default. Let the actual data model shape the result.
Resolve the target from the request or active context. Ask only if ambiguity materially affects the result. Without a server, use supplied schema and explicit assumptions for planning; do not imply live validation.
Pipeline Defaults
- batch over streaming
- raw landing before curation
- explicit raw -> staging -> analytics boundaries
- bulk ingest paths over row-by-row writes
- idempotent stage rebuilds or append contracts before scheduled automation
- verify the MotherDuck-supported DuckDB client version before recommending upstream-only write, checkpoint, or lakehouse features
- native MotherDuck storage unless DuckLake is explicitly required
- MotherDuck CLI for Flight source and large file-shaped output when the agent has a shell; MCP for chat-only operation
- a
flightsGuide for reusable scheduling, naming, secret, and ingestion conventions when the organization has them - Flights sized to their Python work (
F4when the job mostly sends SQL) and instrumented for the Flight Explainer so each run shows step status and the failing step - AI enrichment (classification with
prompt_jev(), extraction withprompt()) as an incremental transform step that writes results to a table, never recomputed at read time
Workflow
- Inspect the available MotherDuck server or supplied source and target context.
- Inspect the current workspace and target data model.
- Define raw, staging, and analytics boundaries.
- Ingest raw data.
- Deduplicate, type, and promote into staging.
- Materialize analytics-ready outputs.
- Validate counts, freshness, uniqueness, and business metrics before publishing downstream assets.
- When durable context is part of delivery, capture stable business definitions and operating caveats in referenced Guides; keep executable transformation logic in source control.
Match execution to the request: answer, review, or planning work returns the requested pipeline artifacts; build or change work creates the requested in-scope files and warehouse objects and validates them. Ask before destructive actions, unrelated external writes, or a material expansion of scope.
When this skill produces a native DuckDB (md:) connection, watermark it with custom_user_agent=agent-skills/2.6.0(harness-<harness>;llm-<llm>). If metadata is missing, fall back to harness-unknown and llm-unknown.
Output
For a full engagement, cover the following as relevant to the request:
- the stage layout
- the ingestion method
- the transformation sequence
- the serving tables or views
- the validation checks
For explicit structured JSON requests, read the output contract. Otherwise use the format that fits the requested deliverable.
References
Read only the sections relevant to the task; these are guidance, not a mandatory itinerary.
references/dlt-dbt-motherduck-project/-- fully runnable MotherDuck reference project usingdlt,dbt-duckdb, and validation queriesreferences/PIPELINE_IMPLEMENTATION_GUIDE.md-- stage design, transformation sequencing, and ingestion-to-serving examples../motherduck-load-data/references/INGESTION_PATTERNS.md-- lower-level ingestion patterns
Examples
Read the execution reference only to run the bundled examples or reproduce their validation.
Related Skills
Load related skills only for missing capabilities; reuse established context.
motherduck-connect-- choose the right connection pathmotherduck-load-data-- ingestion mechanicsmotherduck-model-data-- shape the analytics layermotherduck-query-- write transformations and validationsmotherduck-share-data-- publish curated outputsmotherduck-ducklake-- only when open-table-format storage is a real requirement