PBIXRay MCP Server

MCP server to give llms such as Claude, GitHub Copilot etc full PowerBI model context (from input .pbix) through tools based on PBIXRay python

Local serverstdioPython

What is the PBIXRay MCP server?

MCP server to give llms such as Claude, GitHub Copilot etc full PowerBI model context (from input .pbix) through tools based on PBIXRay python package. The pbixray mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 14 defined tools rather than through you.

What it actually does

This MCP server exposes the capabilities of PBIXRay as tools and resources for LLM clients to interact with Power BI (.pbix) files.

  • Loading and analyzing PBIX files
  • Data model exploration
  • Listing tables in the model
  • Retrieving model metadata
  • Checking model size
  • Getting model statistics

Its toolset

Everything the assistant can do here goes through one of these:

  • load_pbix_file — Core
  • get_tables — Model
  • get_metadata — Model
  • get_power_query — Query
  • get_m_parameters — Query
  • get_model_size — Model
  • get_dax_tables — Query
  • get_dax_measures — Query
  • get_dax_columns — Query
  • get_schema — Structure
  • get_relationships — Structure
  • get_table_contents — Data

Adding it to your client

Installation goes through your MCP client rather than a global install: point it at pbixray-mcp-server on PyPI and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.

When to reach for it

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. PBIXRay's toolset — load_pbix_file, get_tables, get_metadata and 11 more — is a fair guide to whether it matches your workflow. It is maintained by jonaolden; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch PBIXRay.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the pbixray mcp server does with a few real requests.

Available tools

ToolWhat it does
load_pbix_fileCore
get_tablesModel
get_metadataModel
get_power_queryQuery
get_m_parametersQuery
get_model_sizeModel
get_dax_tablesQuery
get_dax_measuresQuery
get_dax_columnsQuery
get_schemaStructure
get_relationshipsStructure
get_table_contentsData
get_statisticsModel
get_model_summaryModel

How to install the PBIXRay MCP server

{
  "mcpServers": {
    "pbixray": {
      "command": "wsl.exe",
      "args": [
        "bash",
        "-c",
        "source ~/dev/pbixray-mcp/venv/bin/activate && python ~/dev/pbixray-mcp/src/pbixray_server.py"
      ]
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Example prompts to try

  • Use PBIXRay to load pbix file.
  • Use PBIXRay to get tables.
  • Use PBIXRay to get metadata.

Frequently asked questions

Tabular-mcp is a follow-up project that allows running DAX queries against a local Power BI model, while PBIXRay MCP Server focuses on analyzing .pbix files by loading and exposing their structure and code.