daxops-mcp
Build Power BI dashboards from your data, straight from Claude Code (or any MCP client).
README
daxops-mcp
Build Power BI dashboards from your data, straight from Claude Code (or any MCP client).
daxops-mcp is a small, self-contained MCP server that lets a DaxOps account
holder drive their DaxOps cloud from an AI agent: upload your own data and generate Power BI .pbix
dashboards, describe what you want in plain English with the AI prompter, browse the built-in Solution
starters, and manage saved dashboards - all authenticated with your DaxOps license key.
Install
Requirements: Node 18+.
You do not need to clone anything. The published package runs straight from npm.
Run on demand with npx (recommended):
npx -y daxops-mcp
Or install it globally:
npm i -g daxops-mcp
daxops-mcp
Either way the server reads your license key from the DAXOPS_LICENSE_KEY environment variable and
refuses to start without it (see below). You will normally never run it by hand - Claude Code launches it
for you from the config snippet.
Where to get your license key
Copy it from your DaxOps account page: https://daxops.com/account. It is the same key the DaxOps desktop app uses. Keep it secret.
Add it to Claude Code
The simplest path - register the published package (Claude Code runs it via npx):
claude mcp add daxops --env DAXOPS_LICENSE_KEY=<your key> -- npx -y daxops-mcp
Or paste this into your Claude Code / .mcp.json config
{
"mcpServers": {
"daxops": {
"command": "npx",
"args": ["-y", "daxops-mcp"],
"env": { "DAXOPS_LICENSE_KEY": "<your key>" }
}
}
}
Local development / from a checkout
If you are working from a clone of this repo instead of the published package, build it once
(npm install && npm run build) and point the config at the built entry point:
{
"mcpServers": {
"daxops": {
"command": "node",
"args": ["/absolute/path/to/daxops/mcp/dist/index.js"],
"env": { "DAXOPS_LICENSE_KEY": "<your key>" }
}
}
}
Configuration (environment)
| Variable | Required | Default | Meaning |
|---|---|---|---|
DAXOPS_LICENSE_KEY |
yes | - | Your DaxOps license key (from https://daxops.com/account). The server refuses to start without it. |
DAXOPS_BASE_URL |
no | https://daxops.com |
The DaxOps site origin (override only for a staging instance). |
Tools
| Tool | What it does |
|---|---|
daxops_list_solutions |
List the built-in Solution starters (id, title, industry, description, KPIs). |
daxops_list_themes |
List the brand colour themes you can pass to a build. |
daxops_upload_data |
Upload local .csv/.xlsx/.xls files; returns a sourceId plus a detected-model summary. |
daxops_introspect |
Show the detected model (tables, columns, relationships, measures, suggested pages) for a sourceId or solution. |
daxops_build |
Build a .pbix from a sourceId or solution (optional pages/branding), poll to done, and download it to disk. |
daxops_ai_build |
Headline tool. Describe the dashboard in plain English; the AI agent designs and builds it, then downloads the .pbix. Uses AI credits. |
daxops_download |
Download a finished build's .pbix by job id (e.g. one that was still running earlier). |
daxops_list_dashboards |
List your saved dashboard definitions. |
daxops_save_dashboard |
Save a reusable dashboard definition (name + solution/sourceId + pages/brand). |
daxops_open_dashboard |
Fetch one saved dashboard's full definition by id. |
daxops_delete_dashboard |
Delete a saved dashboard by id. |
Some tools (data upload, model introspection, saved dashboards) require the +Validation feature on your DaxOps plan; without it the API returns a clear "this is a +Validation feature" message, surfaced as the tool error.
Example prompts
- "Use
daxops_ai_buildto make a multi-page sales report from my uploaded CSVs - an exec overview with KPI cards, a sales trend, and breakdowns by brand and by retailer." - "Upload
sales.csvandregions.xlsx, then introspect the model and tell me what pages you'd suggest." - "List the Solution starters, then build the CFO overview with the
oceantheme and save it tocfo.pbix." - "List my saved dashboards and rebuild the one called 'Monthly Exec Pack'."
Typical flow
daxops_list_solutions- ordaxops_upload_data { paths: ["sales.csv", "regions.xlsx"] }to get asourceId.daxops_ai_build { prompt: "an exec sales overview with YoY growth and a region map", sourceId: "..." }- or
daxops_build { solution: "finance/cfo-overview", theme: "ocean", title: "CFO Overview" }.
- or
- The
.pbixis saved to disk (default./daxops-<title>.pbix, or youroutPath).
Async builds return a job id immediately; the build/AI tools poll until the job is done (a couple of
minutes is normal) and then download the .pbix. If a poll times out, the job id is reported so you can
retry with daxops_download.
Security
- Your license key is read only from the
DAXOPS_LICENSE_KEYenvironment variable and is sent only as anAuthorization: Bearerheader to your DaxOps site over HTTPS. It is never printed in tool output, errors, or logs (server logs go to stderr; stdout carries only the MCP protocol). - Your data is processed on DaxOps' servers in Auckland, New Zealand, and the uploaded data is
deleted after the build completes. Only the
.pbixyou download is kept.
License
This is commercial software. Use of daxops-mcp requires an active DaxOps account and license key, and is
governed by the DaxOps Terms of Service at https://daxops.com. All rights reserved. It is not open-source
and may not be redistributed.
Develop
npm install
npm run dev # tsx watch
npm run typecheck # tsc --noEmit
npm run build # tsc -> dist/
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.