Power BI MCP Server

70 tools. 27 can modify or destroy data without limits.

2 destructive tools with no built-in limits. Policy required.

Last updated:

27 can modify or destroy data
43 read-only
70 tools total

Community server · catalogue entry verified 27/06/2026

How to control Power BI MCP Server ↓

What Power BI MCP Server exposes to your agents

Read (43) Write / Execute (25) Destructive / Financial (2)
Critical Risk

The most dangerous Power BI MCP Server tools

27 of Power BI MCP Server's 70 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control Power BI MCP Server

PolicyLayer is an MCP gateway — it sits between your AI agents and Power BI MCP Server, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "delete_measure": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "pbip_fix_broken_visuals": {
    "limits": [
      {
        "counter": "pbip_fix_broken_visuals_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "impact_analysis": {
    "limits": [
      {
        "counter": "impact_analysis_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Power BI MCP Server — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON POWER BI →

Instant setup, no code required.

All 70 Power BI MCP Server tools

WRITE 17 tools
Write pbip_fix_broken_visuals Fix broken visual references after a table rename. Use this when TOM/API renamed a table but visuals still ref Write pbip_fix_dax_quoting Fix all DAX expressions by properly quoting table names with spaces. Fixes: Leads Sales Data[Amount] -> Write tom_rollback_transaction Roll back (UndoLocalChanges) all pending TOM model edits made since tom_begin_transaction and close the transa Write batch_rename_columns ⚠️ DEPRECATED: Use Write batch_rename_measures ⚠️ DEPRECATED: Use Write batch_rename_tables ⚠️ DEPRECATED: Use Write batch_update_measures Bulk update multiple measure expressions in the Power BI Desktop model. Write create_measure Create a new DAX measure in the Power BI Desktop model. Write create_relationship Create a relationship between two columns in the connected Power BI Desktop model (TOM). Honors an open tom tr Write generate_svg_measure Generate a ready-to-use DAX measure that returns an inline SVG micro-visual (progress bar, bullet chart, statu Write pbip_rename_columns ✅ RECOMMENDED: Safely rename columns in a PBIP project. Updates TMDL files, DAX references, and report visuals Write pbip_rename_measures ✅ RECOMMENDED: Safely rename measures in a PBIP project. Updates TMDL files, DAX references, and report visual Write pbip_rename_tables ✅ RECOMMENDED: Safely rename tables in a PBIP project. Updates EVERYTHING: TMDL files, DAX references (with pr Write pbir_add_page [PREVIEW] Add a new report page to the loaded PBIR-Enhanced PBIP project. Writes a schema-valid page.json and Write pbir_add_visual [PREVIEW] Add a visual to a page in the loaded PBIR-Enhanced project. Supported visual_type: card, kpi, tableE Write pbir_bind_fields [PREVIEW] Add or replace field bindings on an existing visual without recreating it. mode Write tom_commit_transaction Commit (SaveChanges) all pending TOM model edits made since tom_begin_transaction and close the transaction.
READ 43 tools
Read impact_analysis Blast radius before a change: lists model objects that depend on a measure/column (INFO.CALCDEPENDENCY) and, w Read model_diff Produce a human-readable semantic diff (added/removed/changed tables, columns, measures, relationships) betwee Read run_bpa Run a Best Practice Analyzer over the connected semantic model (performance, DAX, naming, formatting, maintena Read analyze_model_storage VertiPaq-style storage analysis: per-table row counts (exact via DAX COUNTROWS), column counts, and best-effor Read audit_ai_readiness Score how AI-ready (Copilot/agent-ready) the model is: coverage of descriptions and format strings on measures Read audit_naming Audit naming conventions across the connected model Read bpa_audit_rule_sources Audit where BPA rules live for the loaded PBIP project: rules embedded in the model (BestPracticeAnalyzer anno Read bpa_validate_rules Validate a custom Best Practice Analyzer rules JSON (the public BPA rule shape): required fields (ID/Name/Cate Read cross_workspace_lineage Tenant-wide inventory + lineage via the Admin Scanner API: workspace/dataset/report counts, datasets missing R Read dax_lint Static-analyze DAX for performance anti-patterns and correctness traps (FILTER over a whole table in CALCULATE Read dax_suggest_rewrite For the auto-fixable DAX anti-patterns (bare Read desktop_discover_instances Discover all running Power BI Desktop instances on this machine Read desktop_get_model_info Get comprehensive model info (tables, columns, measures, relationships) from Power BI Desktop Read desktop_list_columns List columns for a table in the connected Power BI Desktop model Read desktop_list_measures List all measures in the connected Power BI Desktop model Read desktop_list_rls_roles List all RLS (Row-Level Security) roles defined in the Power BI Desktop model Read desktop_list_tables List all tables in the connected Power BI Desktop model Read desktop_rls_status Get the current RLS status including active role and available roles Read find_unused_objects Find columns and measures not referenced by any other model object (INFO.CALCDEPENDENCY), relationship, or - w Read fleet_refresh_monitor Refresh health across many datasets: for each refreshable dataset in the given workspaces, check the most rece Read get_model_info Get comprehensive model info from a Power BI Service dataset using INFO.VIEW functions Read list_columns List columns for a table in a Power BI Service dataset Read list_datasets List all datasets in a Power BI Service workspace Read list_tables List all tables in a Power BI Service dataset via XMLA Read list_workspaces List all Power BI Service workspaces accessible to the Service Principal Read model_snapshot Capture the connected model Read pbip_get_project_info Get information about the loaded PBIP project including paths to TMDL files and report.json Read pbip_load_project Load a PBIP (Power BI Project) for file-based editing. PBIP format allows safe bulk renames without breaking r Read pbip_scan_broken_refs Scan the PBIP project for broken references. Compares table names in semantic model vs report visuals to find Read pbip_validate Validate TMDL syntax in the loaded PBIP project. Checks for unquoted names with spaces, invalid references, et Read pbir_validate_report [PREVIEW] Validate that every field referenced by the report Read pbix_extract Extract a .pbix package to a folder (Zip-Slip protected). Also decodes the legacy UTF-16-LE Report/Layout into Read pbix_inspect Inspect a .pbix file (an OPC ZIP package) without extracting: classify it as thick (imported model) vs thin (l Read refresh_doctor Diagnose a dataset Read rls_test_harness Evaluate a measure or table row count under EVERY RLS role and return a pass/fail matrix vs the unrestricted b Read scan_measure_dependencies Analyze the dependency graph of a measure or column using INFO.CALCDEPENDENCY: upstream (what it depends on) a Read scan_table_dependencies Scan a table to find all references before renaming. Shows measures, calculated columns, and relationships tha Read security_audit_log View recent entries from the security audit log Read security_status Get the current security settings and status (PII detection, audit logging, access policies) Read usage_and_orphan_analytics Tenant usage analytics from the Admin Activity Events API for one UTC day: total events, distinct users, top a Read validate_dax Validate a DAX query or scalar measure expression against the connected model WITHOUT committing anything. Exe Read verify_audit_integrity Verify the audit-log hash chain (compliance/forensics). Detects edited, inserted, deleted, or hash-stripped en Read export_data_dictionary Generate a portable data dictionary (tables, columns, measures with DAX, relationships) for the connected mode

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about Power BI MCP Server

Can an AI agent delete data through the Power BI MCP Server MCP server? +

Yes. The Power BI MCP Server server exposes 2 destructive tools including delete_measure, delete_relationship. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through Power BI MCP Server? +

The Power BI MCP Server server has 17 write tools including pbip_fix_broken_visuals, pbip_fix_dax_quoting, tom_rollback_transaction. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach Power BI MCP Server.

How many tools does the Power BI MCP Server MCP server expose? +

70 tools across 4 categories: Destructive, Execute, Read, Write. 43 are read-only. 27 can modify, create, or delete data.

How do I enforce a policy on Power BI MCP Server? +

Register the Power BI MCP Server MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Power BI MCP Server tool call.

Deterministic rules across all 70 Power BI MCP Server tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Instant setup, no code required.

70 Power BI MCP Server tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.