MR
Mayur Rathi
@github
⭐ 34.1k GitHub stars

Powerbi-Modeling

Powerbi-Modeling是一款design方向的AI技能,核心价值是Power BI semantic modeling assistant for building optimized data models,可用于解决开发者在design领域的实际问题,帮助用户提升效率、自动化重复任务或优化工作流。

Power BI semantic modeling assistant for building optimized data models. Use when working with Power BI semantic models, creating measures, designing star schemas, configuring relationships, implement

Last verified on: 2026-05-30
mkdir -p ./skills/powerbi-modeling && curl -sfL https://raw.githubusercontent.com/github/awesome-copilot/main/skills/powerbi-modeling/SKILL.md -o ./skills/powerbi-modeling/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# 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:


text
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:

- Star schema design: See [STAR-SCHEMA.md](references/STAR-SCHEMA.md)

- Relationship configuration: See [RELATIONSHIPS.md](references/RELATIONSHIPS.md)

- DAX measures and naming: See [MEASURES-DAX.md](references/MEASURES-DAX.md)

- Performance optimization: See [PERFORMANCE.md](references/PERFORMANCE.md)

- Row-level security: See [RLS.md](references/RLS.md)


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_operation

🎯 Best For

  • UI designers
  • Product designers
  • Claude users
  • GitHub Copilot users
  • Designers

💡 Use Cases

  • Generating component mockups
  • Creating design system tokens
  • Design system documentation
  • Component specification creation

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude or GitHub Copilot and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply Powerbi-Modeling to Your Work

    Provide context for your task — paste source material, describe your audience, or share existing work to guide the AI.

  4. 4

    Review and Refine

    Edit the AI output for accuracy, tone, and completeness. Add human insight where the AI lacks context.

❓ Frequently Asked Questions

Does this work with Figma?

Some design skills integrate with Figma plugins. Check the Works With section for supported tools.

Does Powerbi-Modeling generate production-ready design specs?

It generates detailed specifications that developers can use directly. Review and adjust for your specific design system.

How do I install Powerbi-Modeling?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/powerbi-modeling/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Skipping usability testing

AI-generated designs should be validated with real users before development.

Not reading the full skill

Skills contain important context and edge cases beyond the quick start.

🔗 Related Skills