Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The remote Power BI MCP server works out of the box with MCP clients that ship with a preregistered Microsoft Entra application, such as Visual Studio Code and the GitHub Copilot CLI. Other MCP clients - such as Claude Desktop, and ChatGPT require registration of an OAuth Client ID. Microsoft Entra ID doesn't currently support client registration, so these clients can't automatically obtain a client ID for the Power BI MCP server.
To work around this, you register a Microsoft Entra app yourself and provide its application (client) ID to the MCP client as the OAuth client ID.
This article shows you how to:
- Create and configure a Microsoft Entra app registration for an external MCP client
- Register the remote Power BI MCP server in the external client using the Entra app ID
Prerequisites
Before you begin, ensure you have:
- Administrator approval - Your Power BI admin must enable the tenant setting: Users can use the Power BI Model Context Protocol server endpoint (preview).
- Permissions to register an app - You can either register apps in your Microsoft Entra tenant, or work with a tenant administrator who can register the app for you.
Step 1: Create a Microsoft Entra app registration
Create a new app registration in the same Microsoft Entra tenant that hosts your Power BI environment.
- Sign in to the Microsoft Entra admin center as a user who can register applications.
- Go to App registrations, and then select New registration.
- Enter a meaningful name, for example
Power BI MCP - Claude Desktop. - Under Supported account types, select Accounts in this organizational directory only (Single tenant).
- Leave Redirect URI empty for now. You configure it in the next step.
- Select Register.
- On the app's Overview page, copy the Application (client) ID. You use it later when you configure the MCP client.
Step 2: Configure the redirect URI
External MCP clients act as public clients, so you must add a redirect URI of type Public client/native (mobile & desktop).
In your app registration, select Authentication > Add Redirect URI > Mobile and desktop applications.
Add the redirect URI provided by your MCP client. For example:
MCP client Redirect URI Claude Desktop https://claude.ai/api/mcp/auth_callbackChatGPT https://chatgpt.com/connector/oauth/<random_chars>Other clients Use the OAuth callback URL documented by the client Select Configure to save the platform configuration.
On the Authentication page, under Advanced settings, confirm that Allow public client flows is set to No unless your client documentation explicitly requires it.
Select Save.
Important
Always use the exact redirect URI documented by your MCP client. A mismatch causes the OAuth sign-in to fail.
Step 3: Add delegated Power BI API permissions
The remote Power BI MCP server calls the Power BI REST APIs on behalf of the signed-in user. Grant the following delegated permissions on the Power BI Service API.
In your app registration, select API permissions > Add a permission.
Select Power BI Service in Microsoft APIs.
Select Delegated permissions, and then add the following permissions:
Resource URI:
https://analysis.windows.net/powerbi/apiScope Description Dataset.Read.AllRead all semantic models the user can access. MLModel.Execute.AllAllows executing ML models. Workspace.Read.AllRead the workspaces the user can access. Select Add permissions.
(Optional) If your tenant requires admin consent for these permissions, select Grant admin consent. Otherwise, users are prompted to consent the first time they sign in from the MCP client.
Step 4: Register the remote Power BI MCP server in the MCP client
Use the Application (client) ID from step 1 as the OAuth client ID when you add the remote Power BI MCP server to your client. The exact configuration steps depend on the client.
If sign-in fails, verify that:
- The redirect URI in your Entra app exactly matches the one expected by the client.
- The required delegated Power BI permissions are granted (and admin-consented if required by your tenant).
- The tenant setting "Users can use the Power BI Model Context Protocol server endpoint (preview)" is enabled.
Claude Desktop
Open Claude Desktop, and then go to Settings > Connectors > Add custom connector.
Enter the following values:
- Name:
Power BI - Remote MCP server URL:
https://api.fabric.microsoft.com/v1/mcp/powerbi - OAuth Client ID: the Application (client) ID from step 1.
- Name:
Save the connector. Claude Desktop opens a browser window so that you can sign in with your Microsoft Entra account and consent to the requested Power BI permissions.
ChatGPT
In ChatGPT, go to Settings > Apps > Create App.
Fill in the New App dialog:
- Name:
Power BI - MCP Server URL:
https://api.fabric.microsoft.com/v1/mcp/powerbi - Authentication: Select OAuth.
- Name:
Expand Advanced settings to review the discovered OAuth settings, and then configure:
- Registration method: Select User-Defined OAuth Client.
- OAuth Client ID: Enter the Application (client) ID from step 1.
Select Create. ChatGPT prompts you to sign in with your Microsoft Entra account and consent to the requested Power BI permissions.
Other MCP clients
For other MCP clients, follow the client's documentation to add a remote MCP server.
Test your connection
After you register the server in the client, validate the setup:
- Start a new conversation in your MCP client.
- Ask a question that requires the Power BI MCP server, for example: "What tables are in semantic model [ID of the semantic model]?".
- Confirm that the client returns results from your Power BI semantic model.