How Wix scaled AI-native work to 5,000 employees with Willow
Read More
Enterprise Connectors
Power BI logo. Power BI MCP server connector.

Power BI MCP Server

Microsoft Power BI is a business intelligence and analytics platform for visualizing data, creating reports and dashboards, and sharing insights across organizations.

ToolsTools
24
Last updatedLast Updated
CategoryCategory
All
✓Enterprise-grade security
✓SSO & authentication ready
✓Full governance & audit logs

What is the Power BI MCP Server?

The Power BI MCP server gives AI agents structured, permission-aware access to Power BI through the Model Context Protocol. With 24 pre-built actions, agents can read, create, and update Power BI data on behalf of authorized users.

Willow ships the Power BI MCP server as part of an enterprise control plane. Every call runs behind SSO (Okta, Azure AD), enforces RBAC and least-privilege at runtime, writes to a full audit trail, and integrates with Splunk and Loki for SIEM visibility. Connect from Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code, n8n, or any custom agent. Install once, distribute org-wide, and see exactly how Power BI is being used by every AI agent in your stack.

Tools

List Workspaces

Returns a list of workspaces (also known as groups) that the user has access to. Workspaces are collaboration spaces where teams can create and share Power BI content like reports, dashboards, and datasets. Use this to discover available workspaces before accessing their content.

Get Workspace

Returns details of a specific workspace by its ID. Provides information such as workspace name, type, state, and whether it's read-only or on dedicated capacity. Use this to verify workspace properties before performing operations within it.

Create Workspace

Creates a new workspace (group) in Power BI. Workspaces are containers for dashboards, reports, datasets, and dataflows that enable collaboration. The workspace is created with the calling user as the initial admin. Use this to set up new collaboration spaces for teams or projects.

Add Workspace User

Grants user permissions to the specified workspace. You can add users with different access levels: Admin (full control), Member (can publish content), Contributor (can edit content), or Viewer (read-only). Use this to manage team access to workspaces and control who can view or edit content.

Delete Workspace User

Removes a user's access to the specified workspace. This revokes all permissions the user had in the workspace, preventing them from accessing its content. Use this when a team member no longer needs access or when restructuring workspace permissions.

List Datasets

Returns a list of datasets from the specified workspace or from My Workspace if no workspace ID is provided. Datasets are collections of data used to create reports and dashboards. Use this to discover available datasets before querying or refreshing them.

Get Dataset

Returns details of a specific dataset by its ID. Provides information such as dataset name, tables, configured parameters, and data source connections. Use this to inspect dataset properties before performing operations like queries or refreshes.

Execute DAX Query

Executes Data Analysis Expressions (DAX) queries against a dataset. DAX is a formula language for creating custom calculations and aggregations. Returns up to 100,000 rows or 1,000,000 values (whichever limit is hit first). Use this to extract specific data, perform calculations, or analyze dataset content. Note: The 'Dataset Execute Queries REST API' tenant setting must be enabled.

Refresh Dataset

Triggers a refresh operation for the specified dataset. Refreshing updates the dataset with the latest data from its data sources. This is an asynchronous operation - use Get Refresh History to check the status. You can specify advanced options like refreshing specific tables or partitions, or applying a refresh policy.

Get Refresh History

Returns the refresh history for the specified dataset. Shows the status, start time, end time, and any error messages for recent refresh operations. Use this to monitor dataset refresh success, troubleshoot failures, or track refresh duration. Results can be filtered using OData parameters.

Get Dataset Datasources

Returns a list of data sources for the specified dataset. Data sources define where the dataset gets its data from (e.g., SQL Server, Azure SQL, Excel files). Use this to understand dataset connections, verify credentials, or troubleshoot data refresh issues.

List Reports

Returns a list of reports from the specified workspace or from My Workspace if no workspace ID is provided. Reports are interactive visualizations built on top of datasets. Use this to discover available reports before viewing, cloning, or exporting them.

Get Report

Returns details of a specific report by its ID. Provides information such as report name, web URL, embed URL, and the dataset it's built on. Use this to get report metadata before performing operations like cloning or embedding.

Clone Report

Creates a copy of the specified report. You can clone the report to a different workspace and give it a new name. The cloned report will reference the same dataset as the original unless you specify a different target dataset. Use this to create report variants or deploy reports across workspaces.

Export Report

Exports the specified report to a .pbix (Power BI Desktop) or .rdl (paginated report) file. The exported file can be downloaded and opened in Power BI Desktop for editing or archival. Use this to backup reports, move them between environments, or enable offline editing.

Get Report Pages

Returns a list of pages within the specified report. Each page represents a different view or tab in the report with its own visualizations and layout. Use this to understand report structure, navigate to specific pages, or validate page names before embedding.

List Dashboards

Returns a list of dashboards from the specified workspace or from My Workspace if no workspace ID is provided. Dashboards are collections of tiles (visualizations) pinned from reports or created with Q&A. Use this to discover available dashboards before accessing their content.

Get Dashboard

Returns details of a specific dashboard by its ID. Provides information such as dashboard name, web URL, embed URL, and whether it's read-only. Use this to get dashboard metadata before accessing its tiles or embedding it.

Get Dashboard Tiles

Returns a list of tiles (visualizations) from the specified dashboard. Each tile represents a pinned visual from a report or a Q&A result. Tiles contain information about their title, position, size, and source report. Use this to understand dashboard layout or access specific visualizations.

Create Dashboard

Creates a new empty dashboard in the specified workspace or in My Workspace. After creation, you can pin tiles to the dashboard from reports or use Q&A to add content. Use this to set up new dashboard containers for organizing visualizations.

List Dataflows

Returns a list of dataflows from the specified workspace. Dataflows are self-service data preparation tools that enable ETL (Extract, Transform, Load) operations in Power BI. They store prepared data that can be used by multiple datasets. Use this to discover available dataflows and their data entities.

Get Dataflow

Returns details of a specific dataflow by its ID. Provides information such as dataflow name, description, configured refresh schedule, and the entities (tables) it contains. Use this to inspect dataflow properties before refreshing or consuming its data.

List Apps

Returns a list of Power BI apps installed for the user. Apps are packaged collections of dashboards and reports that organizations distribute to users. Unlike workspaces, apps provide a curated, read-only experience for consuming content. Use this to discover available apps and their content.

Get App

Returns details of a specific Power BI app by its ID. Provides information such as app name, description, publisher, and the dashboards and reports it contains. Use this to explore app content before accessing specific items within the app.

Customize tools

Customize Tools

Edit descriptions, modify arguments, select tools, or add new ones

ReviewEdit descriptions
ConfigureChange arguments
ApproveSelect tools
Create NewAdd tool

Set Up Your Power BI MCP Server in Minutes

Add the following configuration to your MCP client. Authentication is handled via OAuth. Compatible with Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code, n8n, and any MCP-compatible agent.

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "willow-powerbi": {
      "type": "http",
      "url": "https://<org>.mcp-s.com/mcp/mcp/powerbi"
    }
  }
}

Cursor

.cursor/mcp.json
{
  "mcpServers": {
    "willow-powerbi": {
      "type": "http",
      "url": "https://<org>.mcp-s.com/mcp/mcp/powerbi"
    }
  }
}

Claude Code

CLI
claude mcp add willow-powerbi --transport http https://<org>.mcp-s.com/mcp/mcp/powerbi

n8n

HTTP Request Node
{
  "url": "https://<org>.mcp-s.com/mcp/mcp/powerbi",
  "method": "POST"
}

Or click "Install with Willow" above to set up automatically with SSO and RBAC preconfigured.

Enterprise Governance for Power BI

Willow adds the layer Power BI and every other SaaS doesn't ship out of the box: every call runs behind SSO (Okta, Azure AD), enforces RBAC and least-privilege at runtime, writes to full audit logs, and detects shadow AI usage across your stack. One MCP gateway. Any agent. Every tool.

Power BI MCP Server FAQ

What is the Power BI MCP server?

The Power BI MCP server is a Model Context Protocol implementation that lets AI agents like Claude, Cursor, and ChatGPT read and write Power BI data through a standardized interface. Willow hosts and governs this server so enterprises can roll it out without a security review backlog.

How is Willow's Power BI MCP server different from the official one?

The official Power BI MCP server is scoped to a single user's account and does not include enterprise governance. Willow's version adds SSO, RBAC, audit logging, shadow AI detection, and centralized control over which actions agents can take across the entire org.

Which AI clients work with the Power BI MCP server?

Claude Desktop, Claude Code, Cursor, ChatGPT, VS Code with MCP support, n8n, and any custom agent built with OpenAI Agents SDK, LangChain, Vercel AI SDK, or Anthropic SDK.

Is the Power BI MCP server secure? How does Willow handle authentication?

Every call runs behind your existing SSO (Okta, Azure AD). Per-user OAuth scopes the agent to exactly what that user can do in Power BI, nothing more. No credentials reach the LLM. Every action writes to an audit trail.

Can I limit which Power BI actions agents can take?

Yes. Willow lets you scope agents to specific actions, specific projects, or specific environments. Toggle actions on or off in the dashboard, or enforce policy via infrastructure-as-code through GitHub.

How do I detect shadow Power BI MCP servers in my org?

Willow's browser extension and discovery service surface unmanaged MCP servers, skills, and AI agents across the org. If a developer installed an unapproved Power BI MCP locally, you'll see it.

What does the Power BI MCP server cost?

Pricing depends on org size and deployment model (SaaS, dedicated cloud, self-host). See withwillow.ai/pricing or contact sales for a quote.

How do I install the Power BI MCP server with Willow?

Install via the Willow Connect Panel in one click, or paste the JSON snippet above into your Claude Desktop, Cursor, or Claude Code config. SSO and RBAC inherit from your existing Willow setup.

Compare Willow MCP Gateway

See how Willow stacks up against other MCP platforms on governance, security, and enterprise readiness.

Your agents are already in the wild.

Give them a Basecamp. Go from AI chaos to AI work, in minutes.