Microsoft Power BI

Microsoft Power BI

Let your AI work with Power BI: list workspaces, semantic models, reports, dashboards, dataflows, gateways and apps, run DAX queries against a model, check data sources, parameters, refresh history and schedules, and start or cancel refreshes. Power BI REST API, signed in with your Microsoft work account.

7 giorni gratis · senza carta · hosting UE

Chiedi qualsiasi cosa a Microsoft

Prova un prompt reale su Microsoft Power BI via AnythingMCP — Claude chiama i tool e risponde. Premi Enter sul tuo messaggio per installare su Cloud.

Installa Microsoft su Cloud
Microsoft Power BI · live via MCP
Condividi
Opus 4.7

Claude è un'AI e può sbagliare. Verifica sempre le risposte.

Setup in 2 minuti

  1. 1Avvia la trial gratuita su cloud.anythingmcp.com.
  2. 2Clicca Microsoft Power BI nel connector store. Incolla le credenziali quando richiesto.
  3. 3Genera una MCP API key e punta il client AI all'URL MCP generato.
Installa Microsoft Power BI ora

Guide per Microsoft

Setup passo-passo per i principali client AI.

Configurare Microsoft Power BI

Direttamente dalla definizione del connettore: dove trovare le credenziali, quali permessi servono e con quale API parla questo adapter. Fornite in inglese dall'autore del connettore.

Microsoft Power BI

This connector works with the Power BI REST API (https://api.powerbi.com/v1.0/myorg) as the Microsoft 365 user who signed in: workspaces and their members, semantic models (datasets) with their data sources, parameters, refresh history and schedule, DAX queries against a model, reports and their pages, dashboards and tiles, dataflows, gateways, installed apps and imports. It can start and cancel refreshes of semantic models and dataflows. The AI sees exactly what that user may see in the Power BI service.

Setup (one-time, about 10 minutes)

  1. Open https://entra.microsoft.com → Applications → App registrations → New registration (or reuse the app of another Microsoft connector).
  2. Supported account types: Accounts in this organizational directory only is the usual choice. Power BI works only with work or school accounts, not personal Microsoft accounts.
  3. Redirect URI: platform Web, https://cloud.anythingmcp.com/api/mcp-oauth/callback on AnythingMCP Cloud, or <your AnythingMCP URL>/api/mcp-oauth/callback when you host AnythingMCP yourself. It must match character for character (AADSTS50011 otherwise).
  4. API permissions → Add a permission → Power BI Service → Delegated permissions: tick Workspace.Read.All, Dataset.ReadWrite.All, Report.Read.All, Dashboard.Read.All, Dataflow.ReadWrite.All, Gateway.Read.All and App.Read.All. Use Dataset.Read.All and Dataflow.Read.All instead for a connector that may only read. Then Grant admin consent if your organisation does not let users consent themselves.
  5. Certificates & secrets → New client secret; copy the secret Value (shown once).
  6. Fill in MICROSOFT_CLIENT_ID (Application ID), MICROSOFT_CLIENT_SECRET (secret value) and MICROSOFT_TENANT_ID (the Directory (tenant) ID GUID, your domain such as contoso.onmicrosoft.com, or organizations for a multi-tenant app), then install.
  7. On the connector page click Authorize with Provider and sign in with a user who has a Power BI licence (Free, Pro or PPU). The refresh token is stored encrypted and access tokens are renewed automatically.

Scope: https://analysis.windows.net/powerbi/api/.default offline_access. .default grants the Power BI permissions ticked in step 4 (add or remove them there, then authorize again); offline_access gives a refresh token. Do not add Microsoft Graph scopes to this connector: one token serves one API.

Tenant settings: DAX queries need the Power BI admin setting Dataset Execute Queries REST API (called Semantic model Execute Queries REST API in newer admin portals; Admin portal → Tenant settings → Integration settings) to be on, and the user needs Read and Build permission on the model. Models hosted in Azure Analysis Services are not supported.

Workflow

  • Find content: power_bi_list_workspaces (OData filter such as contains(name,'Sales')), then per workspace power_bi_list_datasets, power_bi_list_reports, power_bi_list_dashboards, power_bi_list_dataflows. Content in the user's My workspace has no workspace id: use power_bi_list_my_datasets, power_bi_list_my_reports, power_bi_list_my_dashboards. Installed apps: power_bi_list_apps, power_bi_get_app, power_bi_list_app_reports, power_bi_list_app_dashboards.
  • Workspace details: power_bi_get_workspace, power_bi_list_workspace_users.
  • Answer a question with numbers: find the report the user means (power_bi_get_report gives its datasetId), then power_bi_execute_dax_query on that semantic model. To learn the model, EVALUATE COLUMNSTATISTICS() lists its tables and columns, and EVALUATE TOPN(5, 'Table') shows sample rows. Measures are not listed by the API (INFO functions and DMV queries are refused): ask the user for measure names or use the ones the report shows. Prefer the model's measures over summing raw columns.
  • Model health: power_bi_get_dataset, power_bi_list_dataset_datasources, power_bi_list_dataset_parameters, power_bi_get_refresh_history (why did last night's refresh fail? read serviceExceptionJson), power_bi_get_refresh_details, power_bi_get_refresh_schedule.
  • Reports and dashboards: power_bi_list_report_pages, power_bi_list_dashboard_tiles.
  • Dataflows: power_bi_list_dataflow_transactions, power_bi_list_dataflow_datasources.
  • Gateways (gateway admins only): power_bi_list_gateways, power_bi_list_gateway_datasources, power_bi_get_gateway_datasource_status.
  • Imports: power_bi_list_imports, power_bi_get_import.
  • Refreshes: power_bi_refresh_dataset, power_bi_cancel_refresh, power_bi_refresh_dataflow. Confirm with the user before starting one: a refresh loads the sources and counts toward the daily refresh limit.

Switched off at install: power_bi_update_dataset_parameters changes Power Query parameters of a model (for example which server or period it loads). Turn it on per tool only if the AI should do that.

DAX queries: one query per call, starting with EVALUATE (optionally after DEFINE); DAX only. A query returns one table; at most 100,000 rows or 1,000,000 values (whichever comes first) and 15 MB per query, and 120 queries per minute per user. Column keys come back as Table[Column], computed columns as [Name]. A DAX error answers 400 with the message from the engine. Models with row-level security return only the rows the user may see; impersonated_user_name tests another user's view and needs write permission on the model.

Refreshes: power_bi_refresh_dataset answers 202 with no body; the new run shows at the top of power_bi_get_refresh_history with status Unknown while it runs. Shared capacity (Pro) allows 8 refreshes a day per model (scheduled ones included) and only notify_option; options such as type, objects or commit_mode make it an enhanced refresh, which needs Premium, PPU or Fabric capacity and must not send notify_option. Only enhanced refreshes can be followed with power_bi_get_refresh_details and cancelled with power_bi_cancel_refresh.

Reading the answers: lists come as {"value": [...]}. Ids are GUIDs. Times are ISO 8601 in UTC. webUrl opens the item in the Power BI service. List tools return everything at once, except power_bi_list_workspaces and power_bi_list_workspace_users, which page with top and skip.

Limits: the Power BI REST API throttles per user and per tenant; a 429 answer carries Retry-After. Premium capacities slow down refreshes when overloaded, and a refresh throttled for more than an hour fails.

Common errors

  • 401: the authorization expired or was revoked, or the client secret expired. Paste a new secret if needed and click Authorize with Provider again.
  • 403 PowerBINotAuthorizedException or Unauthorized: the user has no access to that workspace or item, a permission from step 4 is missing, or (for DAX) Build permission or the tenant setting is missing.
  • 404 ItemNotFound or PowerBIEntityNotFound: wrong id, or the item is in another workspace (use the group_id where it lives).
  • 400 DatasetExecuteQueriesError: the DAX query is invalid; read the message.
  • 400 on a refresh: notify_option sent with enhanced options, enhanced options on shared capacity, or a refresh already running.

La tua AI è a due click da Microsoft Power BI.

Installa il connettore, incolla le credenziali, chiedi all'AI. 7 giorni gratis, niente carta.