# Power BI (Fabric IQ) MCP server

> Find Power BI reports and semantic models, read their metadata and run read-only DAX queries on data you can access.

- Listing: https://mcp.tc/i/power-bi
- Connect: use the server's own URL `https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq` (OAuth sign-in at the server); clients connect to it directly. The listing link is a page, not an MCP endpoint.
- Type: remote (Streamable HTTP)
- Auth: OAuth sign-in
- Category: [Data & Analytics](https://mcp.tc/c/analytics)
- Vendor: Microsoft
- Verified: yes, mcp.tc checked that this is the official server (https://mcp.tc/verify). It says who runs the server, not that it is safe.
- Homepage: <https://learn.microsoft.com/fabric/iq/connectors/fabric-iq-mcp>

## About

Fabric IQ MCP is a remote server that connects AI agents and MCP clients to Power BI reports and semantic models in Microsoft Fabric. It offers a read-only toolset to find Power BI content, inspect report and semantic model metadata, locate relevant values and run DAX queries. It has no natural-language answering tool; the calling agent composes the DAX and explains the results.

It runs as a hosted endpoint over streamable HTTP at https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq. Users sign in with a Microsoft Entra work or school account, and existing Fabric permissions, row-level security and object-level security still apply. Private-link tenants use https://api.fabric.microsoft.com/v1/mcp/fabriciq.

## What it can do

- Find Power BI reports and semantic models by name or URL
- Inspect report and semantic model metadata and schemas
- Locate relevant values in semantic models
- Run read-only DAX queries against accessible data
- Respects Fabric permissions, RLS and OLS

## Example prompts

- "Find the Sales Overview report and list its semantic model tables."
- "Run a DAX query for total revenue by month in the Finance model."
- "What measures does the Customer Insights semantic model have?"
- "Look up the value 'Contoso' in my Sales semantic model."

## Install

### Claude Code

1. Run this in a terminal, in your project folder:

```bash
claude mcp add --transport http power-bi https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq
```

2. Start Claude Code, type `/mcp`, pick **power-bi** and choose **Authenticate**. A browser window opens for the Microsoft sign-in.

Add `--scope user` to make it available in every project, not just this one.

### Claude Desktop

1. Open **Settings → Connectors** and click **Add custom connector**.

2. Name it **Power BI (Fabric IQ)** and paste this URL:

```url
https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq
```

3. Click **Add**, then **Connect**, and sign in when Microsoft asks.

Claude Desktop’s JSON config file only starts local servers. Remote servers go through Connectors, and connectors you add on claude.ai show up here too.

### claude.ai

1. Open the connector form on claude.ai. This button fills in the name and URL for you:

[Add to claude.ai](<https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Power%20BI%20%28Fabric%20IQ%29&connectorUrl=https%3A%2F%2Ffabriciq.svc.cloud.microsoft%2Fv1%2Fmcp%2Ffabriciq>) (opens connector settings)

2. Check that the URL reads `https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq` and click **Add**.

3. Click **Connect** and sign in when Microsoft asks.

Free plans allow one custom connector. On Team and Enterprise plans an owner adds it under **Organization settings → Connectors**.

### ChatGPT

1. On chatgpt.com, open **Settings → Security and login** and turn on **Developer mode**.

2. Go to `chatgpt.com/plugins` and click **+** to create an app for a remote MCP server.

3. Paste `https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq` as the server URL and choose **OAuth**. ChatGPT sends you to Microsoft to sign in.

Developer mode is available on the web for Plus, Pro, Business, Enterprise and Education accounts.

### Cursor

[Add to Cursor](<https://cursor.com/install-mcp?name=power-bi&config=eyJ1cmwiOiJodHRwczovL2ZhYnJpY2lxLnN2Yy5jbG91ZC5taWNyb3NvZnQvdjEvbWNwL2ZhYnJpY2lxIn0%3D>) (opens Cursor)

Or add it by hand to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (this project):

`mcp.json`:

```json
{
  "mcpServers": {
    "power-bi": {
      "url": "https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq"
    }
  }
}
```

Cursor shows **Needs login** next to the server. Click it to sign in.

### VS Code

[Install in VS Code](<https://vscode.dev/redirect/mcp/install?name=power-bi&config=%7B%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Ffabriciq.svc.cloud.microsoft%2Fv1%2Fmcp%2Ffabriciq%22%7D>) (opens VS Code)

Or from a terminal:

```bash
code --add-mcp '{"name":"power-bi","type":"http","url":"https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq"}'
```

Or commit it to the repo in `.vscode/mcp.json`:

`.vscode/mcp.json`:

```json
{
  "servers": {
    "power-bi": {
      "type": "http",
      "url": "https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq"
    }
  }
}
```

VS Code asks you to sign in the first time the server starts.

### Devin Desktop

1. Add it to `~/.config/devin/mcp_config.json` (macOS and Linux) or `%APPDATA%\devin\mcp_config.json` (Windows):

`mcp_config.json`:

```json
{
  "mcpServers": {
    "power-bi": {
      "serverUrl": "https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq"
    }
  }
}
```

2. Refresh the MCP server list in Cascade and sign in when asked.

Devin Desktop is the new name for Windsurf. It reads `serverUrl` (or `url`) for remote servers.

### Codex

```bash
codex mcp add power-bi --url https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq
codex mcp login power-bi
```

Or edit `~/.codex/config.toml` directly:

`config.toml`:

```toml
[mcp_servers.power-bi]
url = "https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq"
```

### Gemini CLI

```bash
gemini mcp add --transport http power-bi https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq
```

Then, inside Gemini CLI, run `/mcp auth power-bi` to sign in.

This adds it to the current project. Add `-s user` to use it everywhere.

### Any client

Most clients accept this shape. Some name the URL field differently: `serverUrl` in Devin Desktop, `httpUrl` in Gemini CLI’s settings file.

```json
{
  "mcpServers": {
    "power-bi": {
      "type": "http",
      "url": "https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq"
    }
  }
}
```

Zed puts servers under `context_servers` in its settings. Cline needs `"type": "streamableHttp"`, or it assumes SSE.

Client only starts local servers? Bridge it with `npx -y mcp-remote https://fabriciq.svc.cloud.microsoft/v1/mcp/fabriciq`.

## Details

- Last checked: 2026-10-03 (reachable, asks for credentials)
- Listed: 2026-10-03
- Updated: 2026-10-03

---
Source: https://mcp.tc/i/power-bi (mcp.tc is an independent directory, not affiliated with this server's publisher). Corrections: https://mcp.tc/report
