powerbi-modeling

github/awesome-copilot · Agent Skill

Assiste nella creazione e ottimizzazione di modelli semantici Power BI, inclusi DAX, schemi, relazioni e RLS, seguendo le migliori pratiche.

Vai all'installazione ↓

Opzioni di installazione

Il prompt con anteprima è selezionato di default. Puoi passare al comando diretto.

Installa con Claude o Codex

Copia il prompt, incollalo in Claude, Codex o un altro assistente: analizzerà la pagina dello skill e lo installerà.

I'd like to install this Claude Code skill:
https://github.com/github/awesome-copilot/tree/main/skills/powerbi-modeling

Please review the SKILL.md file, verify the skill is legitimate, then copy the skill folder into .claude/skills/ of my project.

File dello skill

6 file Scarica ZIP

Leggi SKILL.md e i file correlati prima di installare. Clicca un file per l'anteprima.

Contenuto di SKILL.md

Testo originale dell'autore · sola lettura

Power BI Semantic Modeling

Guide users in building optimized, well-documented Power BI semantic models following Microsoft best practices.

When to Use This Skill

Use this skill when users ask about:

  • Creating or optimizing Power BI semantic models
  • Designing star schemas (dimension/fact tables)
  • Writing DAX measures or calculated columns
  • Configuring table relationships (cardinality, cross-filter)
  • Implementing row-level security (RLS)
  • Naming conventions for tables, columns, measures
  • Adding descriptions and documentation to models
  • Performance tuning and optimization
  • Calculation groups and field parameters
  • Model validation and best practice checks

Trigger phrases: "create a measure", "add relationship", "star schema", "optimize model", "DAX formula", "RLS", "naming convention", "model documentation", "cardinality", "cross-filter"

Prerequisites

Required Tools

  • Power BI Modeling MCP Server: Required for connecting to and modifying semantic models
  • Enables: connection_operations, table_operations, measure_operations, relationship_operations, etc.
  • Must be configured and running to interact with models

Optional Dependencies

  • Microsoft Learn MCP Server: Recommended for researching latest best practices
  • Enables: microsoft_docs_search, microsoft_docs_fetch
  • Use for complex scenarios, new features, and official documentation

Workflow

1. Connect and Analyze First

Before providing any modeling guidance, always examine the current model state:

1. List connections: connection_operations(operation: "ListConnections")
2. If no connection, check for local instances: connection_operations(operation: "ListLocalInstances")
3. Connect to the model (Desktop or Fabric)
4. Get model overview: model_operations(operation: "Get")
5. List tables: table_operations(operation: "List")
6. List relationships: relationship_operations(operation: "List")
7. List measures: measure_operations(operation: "List")

2. Evaluate Model Health

After connecting, assess the model against best practices:

  • Star Schema: Are tables properly classified as dimension or fact?
  • Relationships: Correct cardinality? Minimal bidirectional filters?
  • Naming: Human-readable, consistent naming conventions?
  • Documentation: Do tables, columns, measures have descriptions?
  • Measures: Explicit measures for key calculations?
  • Hidden Fields: Are technical columns hidden from report view?

3. Provide Targeted Guidance

Based on analysis, guide improvements using references:

Quick Reference: Model Quality Checklist

| Area | Best Practice |

|------|--------------|

| Tables | Clear dimension vs fact classification |

| Naming | Human-readable: Customer Name not CUST_NM |

| Descriptions | All tables, columns, measures documented |

| Measures | Explicit DAX measures for business metrics |

| Relationships | One-to-many from dimension to fact |

| Cross-filter | Single direction unless specifically needed |

| Hidden fields | Hide technical keys, IDs from report view |

| Date table | Dedicated marked date table |

MCP Tools Reference

Use these Power BI Modeling MCP operations:

| Operation Category | Key Operations |

|-------------------|----------------|

| connection_operations | Connect, ListConnections, ListLocalInstances, ConnectFabric |

| model_operations | Get, GetStats, ExportTMDL |

| table_operations | List, Get, Create, Update, GetSchema |

| column_operations | List, Get, Create, Update (descriptions, hidden, format) |

| measure_operations | List, Get, Create, Update, Move |

| relationship_operations | List, Get, Create, Update, Activate, Deactivate |

| dax_query_operations | Execute, Validate |

| calculation_group_operations | List, Create, Update |

| security_role_operations | List, Create, Update, GetEffectivePermissions |

Common Tasks

Add Measure with Description

measure_operations(
  operation: "Create",
  definitions: [{
    name: "Total Sales",
    tableName: "Sales",
    expression: "SUM(Sales[Amount])",
    formatString: "$#,##0",
    description: "Sum of all sales amounts"
  }]
)

Update Column Description

column_operations(
  operation: "Update",
  definitions: [{
    tableName: "Customer",
    name: "CustomerKey",
    description: "Unique identifier for customer dimension",
    isHidden: true
  }]
)

Create Relationship

relationship_operations(
  operation: "Create",
  definitions: [{
    fromTable: "Sales",
    fromColumn: "CustomerKey",
    toTable: "Customer",
    toColumn: "CustomerKey",
    crossFilteringBehavior: "OneDirection"
  }]
)

When to Use Microsoft Learn MCP

Research current best practices using microsoft_docs_search for:

  • Latest DAX function documentation
  • New Power BI features and capabilities
  • Complex modeling scenarios (SCD Type 2, many-to-many)
  • Performance optimization techniques
  • Security implementation patterns