Skip to content
| Marketplace
Sign in
Visual Studio Code>Data Science>MCP Engine - Power BI MCP ServerNew to Visual Studio Code? Get it now.
MCP Engine - Power BI MCP Server

MCP Engine - Power BI MCP Server

Maxim Anatsko

|
229 installs
| (1) | Free
Build, explore, and manage Power BI models using natural language with GitHub Copilot. Create measures, analyze performance, document models, and more—all from VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

MCP Engine - Power BI MCP Server

Build, explore, and manage your Power BI models using natural language—right from VS Code.

This extension brings your Power BI models into GitHub Copilot Chat through the Model Context Protocol (MCP). Ask questions, create measures, document tables, analyze performance, and refactor your model—all without leaving your editor.

Pricing

This extension is free to use. All core features—model exploration, DAX queries, measure creation, bulk operations, and more—work without any license.

Pro features (PII masking, numeric masking, unit testing, policy engine, memories, impact analysis, and others) require a paid license. See www.mcpengine.dev/pricing for details.

Why use this extension?

  • Natural language model building: "Create a Year-over-Year Sales measure" → done
  • Instant documentation: Generate complete model docs including DAX formulas and relationships
  • Bulk operations: Rename 50 measures, translate to 3 languages, or fix naming conventions in seconds
  • Performance insights: Analyze VertiPaq statistics, query performance, and storage optimization
  • Safe exploration: Read-only mode lets you explore and document without any changes
  • Advanced features: Manage calculation groups, UDFs, security roles, hierarchies, and more

What can you do?

Build and modify models with AI assistance

Create and manage every part of your Power BI model:

  • Measures: Create, update, delete with format strings and display folders
  • Tables: Add new tables, modify schemas, configure partitions (M/SQL/DAX/Dataflow)
  • Relationships: Create and configure with cardinality and cross-filter direction
  • Calculation Groups: Build time intelligence and dynamic formatting
  • Hierarchies: Set up drill-down paths with proper level ordering
  • Security: Define row-level and object-level security roles
  • Translations: Add multi-language support for global audiences

Analyze and optimize

Get deep insights into your model:

  • Run DAX queries and see results instantly in chat
  • Preview table data to verify your transformations
  • Analyze VertiPaq statistics to find compression and performance issues
  • Query performance analysis with detailed Storage Engine and Formula Engine metrics
  • Column statistics including cardinality, distinct values, and null counts

Document everything automatically

Generate comprehensive documentation:

  • Complete model schema with all tables, columns, and measures
  • DAX formulas with explanations
  • Relationship diagrams and cardinality info
  • Data source connections and partition details
  • Security roles and RLS/OLS filters

Bulk operations at scale

Stop doing repetitive work:

  • Rename dozens of objects following naming conventions
  • Generate translations for multiple languages at once
  • Update descriptions for all measures in a table
  • Apply consistent formatting patterns across measures
  • Refactor DAX references after schema changes

Getting started

Prerequisites

  • Windows 10/11 or macOS (Intel or Apple Silicon)
  • Power BI Desktop (Windows) or Power BI Service with XMLA endpoint (macOS)
  • VS Code 1.102+ with GitHub Copilot

Note: On macOS, only Power BI Service Premium/Fabric workspaces with XMLA endpoints are supported. Power BI Desktop is Windows-only.

Installation

  1. Install the extension Download from the VS Code Marketplace or install the VSIX file directly.

  2. Open Power BI Desktop Launch Power BI Desktop and open a PBIX file you want to work with.

  3. Enable MCP tools in Copilot Chat

    • Open GitHub Copilot Chat in VS Code
    • Click the Tools button to enable MCP tools
    • The MCP Engine server for Power BI will appear automatically
  4. Connect to your model In Copilot Chat, type:

    List my available Power BI models and connect to the first one
    
  5. Start building! Now you can use natural language to work with your model.

Real-world examples

Create time intelligence measures

I need Year-over-Year growth measures for my Sales table. Create:
- Total Sales
- Sales Last Year
- Sales YoY Growth %
- Sales Year-to-Date

Put them in the "Time Intelligence" display folder with proper formatting.

Document your entire model

Generate complete documentation for my Power BI model including:
- All tables with descriptions
- Column data types and formats
- Measures with their DAX formulas
- Relationships and cardinality
- Data sources and refresh schedules

Format as Markdown with a table of contents.

Analyze and fix relationships

Review all relationships in my model and identify:
1. Any inactive relationships that might be needed
2. Bidirectional relationships that could cause issues
3. Missing relationships between related tables
4. Recommendations for optimization

Build customer retention metrics

Create a measure that calculates customer retention rate:
- Count unique customers this period
- Count customers who also bought last period
- Calculate retention percentage
- Handle edge cases and add error handling
- Format as percentage with 1 decimal

Add multi-language support

Add French (fr-FR) and German (de-DE) translations to my model.
Translate all table names, column names, and measure names.
Keep technical/system names in English but translate display names.

Performance optimization

Analyze VertiPaq statistics for my model and identify:
- Columns with high cardinality that should be reviewed
- Tables with poor compression ratios
- String columns that could be converted to whole numbers
- Recommendations to reduce model size

Security implementation

Set up row-level security with these roles:
1. Sales Manager - see all regions
2. Regional Rep - filter to [Region] = USERPRINCIPALNAME()
3. Finance Team - read-only access with no filtering

Show me the DAX filters for each role.

Advanced configuration

Extension settings

Customize the server behavior in VS Code Settings (File > Preferences > Settings):

  • mcpEngine.serverPath Path to a custom server executable (advanced users only)

  • mcpEngine.args Additional command-line arguments like -NoAutoSelect or -Debug

  • mcpEngine.environmentVariables Environment variables as comma-separated KEY=VALUE pairs

Read-only mode

To prevent any modifications to your model, set the environment variable:

MCP_ENGINE_MODE=readonly

In read-only mode, you can still explore, document, query, and analyze—but cannot create, update, or delete anything.

Privacy and data handling

⚠️ Important: Understand who collects what

This MCP server does NOT collect any data:

  • The MCP server runs entirely on your local machine
  • It does NOT send telemetry, analytics, or usage data anywhere
  • It does NOT upload your Power BI model data to external servers (except optional formatting APIs)
  • It does NOT log your queries or model metadata externally

Note: Some optional features connect to external services:

  • License validation uses LemonSqueezy for activation/validation
  • DAX/M formatting (when enabled) sends expressions to external formatting APIs
  • XMLA/Power BI Service connectivity authenticates through Microsoft endpoints

However, GitHub Copilot DOES collect conversation data:

  • GitHub Copilot is a separate service from this MCP server
  • When you use this extension, your conversations and model data go to GitHub Copilot's AI services
  • GitHub Copilot may collect, store, and process your prompts, model information, and queries according to their privacy policy
  • Review GitHub's privacy documentation before sharing sensitive or confidential model data

Your responsibility

You are responsible for:

  • Understanding what data you share with AI assistants
  • Reviewing and accepting the privacy policies of GitHub Copilot
  • Ensuring compliance with your organization's data governance policies
  • Not sharing sensitive, confidential, or regulated data if prohibited
  • Using read-only mode when you want to prevent model modifications

We are NOT responsible for:

  • How GitHub Copilot or other AI services handle your data
  • Any data collected or stored by AI assistants
  • Compliance with your organization's policies
  • Data breaches or privacy issues with third-party AI services

How data flows

  1. Power BI Desktop → MCP Server (local connection, no external communication)
  2. MCP Server → GitHub Copilot (your model data is sent to Copilot's AI services)
  3. GitHub Copilot → You (responses come back through the same path)

The MCP server is just a bridge—it doesn't collect or store data. But the AI assistant does.

Safety features

  • The server uses the same local Analysis Services API that Power BI Desktop uses internally
  • All MCP-to-Power BI connections are local-only (no internet required)
  • No credentials or connection strings are exposed to the AI
  • Use read-only mode (MCP_ENGINE_MODE=readonly) to guarantee no modifications can be made

Limitations

  • Windows: Works with Power BI Desktop (local PBIX files) and Power BI Service XMLA endpoints
  • macOS: Power BI Service XMLA endpoints only (Premium/Fabric required). Power BI Desktop is not available on macOS.
  • Active file required (Windows): Power BI Desktop must have a PBIX file open and loaded
  • Query limits: DAX queries return up to 1,000 rows by default (configurable)

Troubleshooting

Having issues? Check the Output panel in VS Code (View > Output > MCP Servers) for detailed error messages.

Common issues:

  • No models found: Ensure Power BI Desktop is running with a PBIX file open
  • Connection failed: Wait for the model to fully load in Power BI Desktop
  • Tools not appearing: Click the Tools button in Copilot Chat to enable MCP

For detailed troubleshooting steps, see the Getting Started page.

Support and feedback

  • FAQ: https://www.mcpengine.dev/faq
  • Getting Started: https://www.mcpengine.dev/getting-started
  • Questions: Use the VS Code Marketplace Q&A tab

Legal and disclaimers

Developed by: Maxim Anatsko (maxanatsko.com)

Not affiliated with Microsoft: This extension and MCP server are developed independently. They are not affiliated with, endorsed by, or connected to Microsoft Corporation. Power BI, Analysis Services, and other Microsoft product names are trademarks of Microsoft Corporation.

Third-party notices: See THIRD_PARTY_NOTICES.md included with this extension.

License and warranty disclaimer: This software is proprietary and provided "as is" without warranty of any kind, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, and non-infringement.

Limitation of liability: In no event shall the author or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including but not limited to procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

Use at your own risk: You are solely responsible for:

  • Evaluating the suitability of this extension for your use case
  • Backing up your Power BI models before making changes
  • Understanding the privacy implications of using AI assistants
  • Compliance with your organization's data governance and security policies
  • Any consequences arising from modifications made to your Power BI models

Version: 3.3.10 | MCP Protocol: 2025-11-25 | Platforms: Windows 10/11, macOS (Intel + Apple Silicon)

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft