npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

daxops-mcp

v0.1.0

Published

DaxOps MCP server - drive your DaxOps cloud account from Claude Code or any MCP client: build Power BI .pbix dashboards from your data, use the AI prompter, browse Solution starters, and manage saved dashboards, authenticated with your DaxOps license key.

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_build to 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.csv and regions.xlsx, then introspect the model and tell me what pages you'd suggest."
  • "List the Solution starters, then build the CFO overview with the ocean theme and save it to cfo.pbix."
  • "List my saved dashboards and rebuild the one called 'Monthly Exec Pack'."

Typical flow

  1. daxops_list_solutions - or daxops_upload_data { paths: ["sales.csv", "regions.xlsx"] } to get a sourceId.
  2. 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" }.
  3. The .pbix is saved to disk (default ./daxops-<title>.pbix, or your outPath).

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_KEY environment variable and is sent only as an Authorization: Bearer header 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 .pbix you 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/