Microsoft Power Bi for AI agents

Microsoft Power BI is a business analytics service for building interactive reports and dashboards from connected data sources across a company. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

AnalyticsOAuth 2.0MCP + RESTpowerbi.microsoft.com
AUDIT LOG · MICROSOFT POWER BIPOLICY: acme-support
09:41:07 · claude · u_8f2read
microsoft_power_bi.get_page
Get Report Page✓ allowed · 212ms
09:41:08 · claude · u_8f2read
microsoft_power_bi.get_goals
Get Goals from Scorecard✓ allowed · 164ms
09:41:09 · claude · u_8f2write
microsoft_power_bi.create_group
Create Workspace✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
microsoft_power_bi.delete_goal
Delete Goal✕ blocked · policy: deny
EVERY MICROSOFT POWER BI CALL, ON THE RECORD
01 · USE CASES

What agents do in Microsoft Power Bi.

01

Run a DAX query on a dataset

Execute a DAX query against a dataset to pull a specific metric, read-only.

02

Check a workspace's reports

List reports in a workspace to find the right one before sharing it, read-only.

03

Approve before deleting a dataset

Require approval before deleting a dataset, since every report built on it would break.

02 · ACTIONS

116 Microsoft Power Bi actions, graded by risk.

Every Microsoft Power Bi action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

54

Look things up. Allowed by default.

  • microsoft_power_bi.get_page
    Get Report Page
  • microsoft_power_bi.get_goals
    Get Goals from Scorecard
  • microsoft_power_bi.get_pages
    Get Pages from Report
  • microsoft_power_bi.get_groups
    Get Groups
  • microsoft_power_bi.get_import
    Get Import
  • microsoft_power_bi.get_tables
    Get Tables in Dataset
  • microsoft_power_bi.get_tiles2
    Get Tiles from My Workspace Dashboard
  • microsoft_power_bi.get_tiles3
    Get Tiles from Workspace Dashboard
  • microsoft_power_bi.get_dataset
    Get Dataset
  • microsoft_power_bi.get_gateway
    Get Gateway
  • microsoft_power_bi.get_report3
    Get Report from My Workspace
  • microsoft_power_bi.get_reports
    Get Reports
  • microsoft_power_bi.get_dataset2
    Get Dataset in Workspace
  • microsoft_power_bi.get_datasets
    Get Datasets from My Workspace
  • microsoft_power_bi.get_gateways
    Get Gateways
  • microsoft_power_bi.get_imports2
    Get Imports from My Workspace
+ 38 MORE

write

48

Create and change things. Allow, or ask the user first.

  • microsoft_power_bi.post_goal
    Post Goal
  • microsoft_power_bi.create_group
    Create Workspace
  • microsoft_power_bi.add_dashboard2
    Add Dashboard to Workspace
  • microsoft_power_bi.post_goal_note
    Post Goal Note
  • microsoft_power_bi.update_dataset
    Update Dataset
  • microsoft_power_bi.create_scorecard
    Create Scorecard
  • microsoft_power_bi.update_workspace
    Update Workspace
  • microsoft_power_bi.create_goal_value
    Create Goal Value Check-in
  • microsoft_power_bi.post_dataset_user
    Grant Dataset User Permissions
  • microsoft_power_bi.post_status_rules
    Post Goal Status Rules
  • microsoft_power_bi.update_goal_by_id
    Patch Goal By ID
  • microsoft_power_bi.post_rows_in_group
    Add Rows to Dataset Table in Workspace
  • microsoft_power_bi.create_push_dataset
    Create Push Dataset
  • microsoft_power_bi.update_datasources3
    Update Paginated Report Data Sources
  • microsoft_power_bi.post_dataset_in_group
    Create Push Dataset in Workspace
  • microsoft_power_bi.update_report_content
    Update Report Content
+ 32 MORE

destructive

14

Delete, cancel or archive. Ask first, or deny outright.

  • microsoft_power_bi.delete_goal
    Delete Goal
  • microsoft_power_bi.delete_rows
    Delete Rows from Dataset Table
  • microsoft_power_bi.delete_dataset
    Delete Dataset
  • microsoft_power_bi.cancel_refresh2
    Cancel Dataset Refresh in Workspace
  • microsoft_power_bi.delete_dataflow
    Delete Dataflow
  • microsoft_power_bi.delete_dataset2
    Delete Dataset from Workspace
  • microsoft_power_bi.delete_dashboard
    Delete Dashboard
  • microsoft_power_bi.delete_workspace
    Delete Workspace
  • microsoft_power_bi.delete_pipeline_user
    Delete Pipeline User
  • microsoft_power_bi.delete_rows_in_group
    Delete Rows from Dataset Table in Workspace
  • microsoft_power_bi.delete_goal_note_by_id
    Delete Goal Note by ID
  • microsoft_power_bi.delete_report_in_group
    Delete Report from Workspace
  • microsoft_power_bi.delete_scorecard_by_id
    Delete Scorecard By ID
  • microsoft_power_bi.delete_goal_status_rules
    Delete Goal Status Rules
03 · HOW IT WORKS

Microsoft Power Bi in three steps.

  1. 01Your users connect Microsoft Power BiThey sign in to Microsoft Power Bi on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, writes like “create Workspace” can wait for the user, and “delete Goal” can be denied outright.
  3. 03Any agent can actYour agent calls Microsoft Power Bi through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('microsoft_power_bi', {
  read: 'allow',
  write: 'ask',        // create_group
  destructive: 'deny',  // delete_goal
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Microsoft Power Bi connects.

Users sign in to Microsoft Power Bi on Arc0 Connect and approve the scopes you request. Build with Arc0’s Microsoft Power Bi OAuth app, or bring your own so the Microsoft Power Bi consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Microsoft Power Bi connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Microsoft Power Bi from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Microsoft Power Bi and Arc0, answered.

Q01

Can I use Microsoft Power Bi with Claude, ChatGPT or Cursor?

Yes. Connect Microsoft Power Bi to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Microsoft Power Bi actions you allow.

Q02

How do users connect Microsoft Power Bi?

Users sign in to Microsoft Power Bi on Arc0 Connect and approve the scopes you request. Build with Arc0’s Microsoft Power Bi OAuth app, or bring your own so the Microsoft Power Bi consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Microsoft Power Bi actions can my agent take?

116 in total: 54 read, 48 write and 14 destructive, such as “create Workspace”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in Microsoft Power Bi?

Yes. Actions like “delete Goal” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call Microsoft Power Bi too?

Yes. The same Microsoft Power Bi connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Microsoft Power Bi into your agent.

Your users connect Microsoft Power Bi once, under your brand. Your agent gets 116 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan