Scaffolds a complete dbt-fabric project for a Fabric Data Warehouse, generating profiles.yml, dbt_project.yml, _sources.yml with column types, requirements.txt, and .gitignore.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fabric-dw:dbt-setupThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generates a complete dbt-fabric project scaffold using the fabric-dw MCP tools and writes all files to the local filesystem.
Generates a complete dbt-fabric project scaffold using the fabric-dw MCP tools and writes all files to the local filesystem.
Gather these from the user (via $ARGUMENTS or natural language) before starting:
dbo)default (DefaultAzureCredential), sp (service principal), or interactive (default: default)_sources.yml (default: true, recommended)Call get_warehouse with the workspace and warehouse name. This returns the warehouse metadata including the connection string used in the dbt profile.
Call list_schemas and list_tables to confirm that the warehouse is reachable and to identify the schemas and tables that will appear as dbt sources.
Show the user a summary: number of schemas found, number of tables found.
Call generate_dbt_profile with:
workspace, warehouse, project_name, schema, authentication as providedwith_sources=true (unless the user explicitly opted out)When with_sources=true, the tool performs a bulk column fetch and emits a models/staging/_sources.yml that already includes each table's columns: block with name and formatted data_type for every column. This output is ready for dbt contract enforcement and column-level documentation without any manual assembly.
Write all file contents returned by generate_dbt_profile to the user's working directory. The expected set of files:
| Path | Purpose |
|---|---|
profiles.yml | dbt connection profile |
dbt_project.yml | dbt project definition |
models/staging/_sources.yml | Source definitions with column types (when with_sources=true) |
requirements.txt | Python package dependencies (dbt-fabric) |
.gitignore | Excludes secrets and build artefacts |
Before writing, check whether any of these files already exist and confirm with the user before overwriting.
After writing the files, give the user the following instructions:
# Install dependencies
pip install -r requirements.txt
# Verify the connection
dbt debug
# Run your first dbt project
dbt run
Also remind the user to:
profiles.yml and fill in any {{ env_var(...) }} placeholders (service-principal credentials are never written as literals; they are templated).AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET) are set before running dbt debug if using service-principal auth.authentication=sp, the generated profiles.yml uses {{ env_var(...) }} placeholders for tenant ID, client ID, and client secret. Never write literal credential values. Remind the user that these must be set in environment before committing profiles.yml to version control.get_table_columns and get_view_columns are available for ad-hoc schema inspection (e.g., if the user wants to review a specific table before deciding which columns to expose), but explicit calls to those tools are not required; column data is built into generate_dbt_profile with with_sources=true.npx claudepluginhub sdebruyn/fabric-dw-mcp-cli --plugin fabric-dwMines projects and conversations into a searchable memory palace. Activates on queries about MemPalace, memory palace, mining, searching, palace setup, wings, rooms, drawers, or recalling past work.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Implements vector databases with Pinecone, Weaviate, Qdrant, Milvus, pgvector for semantic search, RAG, recommendations, and similarity systems. Optimizes embeddings, indexing, and hybrid search.
2plugins reuse this skill
First indexed Jun 27, 2026