# Horizun PBI MCP

Connects coding agents to Power BI Desktop instances and PBIP repositories. Runs DAX queries, edits semantic models, and validates report structures.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 32
- Author: HorizunGroup
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/HorizunGroup/horizun-pbi-mcp
- Updated: 2026-10-20
- HTML: https://affpapa.org/en/nevibecode/mcp/horizun-pbi-mcp

## What it does

The server operates locally and provides 139 tools for interacting with Power BI projects. It connects over `localhost` to active Desktop sessions, inspecting model schemas and running DAX queries. For offline work, it edits semantic definitions stored in TMDL and generates visual components in PBIR format, bypassing the closed `.pbix` structure.

Disk operations are isolated from memory state. Because Desktop locks visual definitions while running, PBIR layout edits require closing the application first. Dual writing to disk and memory simultaneously is blocked. The server also never touches Power BI Service accounts, keeping all processing on the local machine. Every file edit generates an automatic backup and validates the written JSON.

Running this MCP server requires Windows 10 or 11 alongside Python 3.10 or newer. Without Power BI Desktop installed, live DAX execution becomes unavailable, though offline PBIP project editing remains fully functional.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add horizun-pbi-mcp -- uvx horizun-pbi-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from horizun-pbi-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add horizun-pbi-mcp -- uvx horizun-pbi-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from horizun-pbi-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "horizun-pbi-mcp": {
            "command": "uvx",
            "args": [
                "horizun-pbi-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from horizun-pbi-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "horizun-pbi-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "horizun-pbi-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from horizun-pbi-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add horizun-pbi-mcp uvx horizun-pbi-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from horizun-pbi-mcp <command>

## When to use it
- troubleshoot empty or incorrect DAX measure calculations
- audit a PBIP folder for broken references before code review
- convert legacy `.pbix` files into open `.pbip` formats
- build new report tabs and visuals from text specifications
- export semantic model measure definitions into an Excel workbook

## Example prompts
- Inspect this PBIP project folder and identify potential errors before committing changes.
- Run a read-only DAX query against the open model to inspect sales by month.
- Generate a report page in PBIR format from this layout outline and validate the JSON.

## Similar
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89408
- [Scrapling MCP Server](https://affpapa.org/en/nevibecode/mcp/scrapling-mcp-server.md) — MCP server · ★ 89433
- [MCP Toolbox for Databases](https://affpapa.org/en/nevibecode/mcp/googleapis-mcp-toolbox-for-databases.md) — MCP server · ★ 16717
- [PostHog MCP Server](https://affpapa.org/en/nevibecode/mcp/posthog-mcp-server.md) — MCP server · ★ 40409
- [dbx](https://affpapa.org/en/nevibecode/mcp/dbx.md) — MCP server · ★ 27669
- [Metabase](https://affpapa.org/en/nevibecode/mcp/metabase.md) — MCP server · ★ 49845

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
