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

microsoft-fabric-mcp

v1.0.0

Published

Model Context Protocol (MCP) server for Microsoft Fabric & Power BI - Query datasets, execute DAX, refresh data, and manage workspaces

Downloads

28

Readme

Microsoft Fabric MCP Server

A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with Microsoft Fabric and Power BI services.

Features

  • 📊 Power BI Integration

    • List and query datasets
    • Execute DAX queries
    • Refresh datasets
    • Manage workspaces
  • 🏭 Microsoft Fabric Support

    • Create and manage notebooks
    • Upload data to warehouses
    • Access Fabric workspaces

Installation

Via NPM (Recommended)

npm install -g @strainprint/microsoft-fabric-mcp

From Source

git clone https://github.com/strainprint/microsoft-fabric-mcp.git
cd microsoft-fabric-mcp
npm install
npm run build

Configuration

1. Azure App Registration

Create an Azure App Registration with the following permissions:

  • Power BI Service (Delegated or Application):
    • Dataset.Read.All
    • Workspace.Read.All
    • Dataset.Execute.All (for DAX queries)

2. Power BI Tenant Settings

Enable in Power BI Admin Portal → Tenant settings:

  • "Allow service principals to use Power BI APIs"
  • "Service principals can access read-only admin APIs"

3. Environment Variables

Create a .env file or set environment variables:

# Required
AZURE_TENANT_ID=your-tenant-id
AZURE_CLIENT_ID=your-client-id
AZURE_CLIENT_SECRET=your-client-secret

# Optional
POWERBI_WORKSPACE_ID=workspace-id  # If not set, uses workspace-agnostic endpoints

4. Claude Desktop Configuration

Add to your Claude Desktop config (%APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "MicrosoftFabric": {
      "command": "npx",
      "args": [
        "-y",
        "@strainprint/microsoft-fabric-mcp"
      ],
      "env": {
        "AZURE_TENANT_ID": "your-tenant-id",
        "AZURE_CLIENT_ID": "your-client-id",
        "AZURE_CLIENT_SECRET": "your-client-secret",
        "POWERBI_WORKSPACE_ID": "optional-workspace-id"
      }
    }
  }
}

Usage

Once configured, Claude can use commands like:

  • "List my Power BI datasets"
  • "Execute this DAX query on dataset X"
  • "Refresh the sales dataset"
  • "Show me all workspaces"

Available Tools

get_workspaces

Get all accessible Power BI/Fabric workspaces

get_powerbi_datasets

List all datasets in the configured workspace

execute_dax_query

Execute DAX queries against a dataset

{
  "datasetId": "dataset-guid",
  "query": "EVALUATE TOPN(10, 'Sales')"
}

refresh_dataset

Trigger a dataset refresh

{
  "datasetId": "dataset-guid"
}

create_notebook

Create a new Fabric notebook

upload_to_datawarehouse

Upload data to a Fabric data warehouse

Troubleshooting

403 Forbidden Errors

  1. Check Service Principal Permissions

    • Ensure the service principal is added to the Power BI workspace
    • Verify API permissions in Azure Portal
  2. Power BI Tenant Settings

    • Confirm service principals are allowed to use Power BI APIs
    • Check if the service principal is in the allowed security group
  3. Token Issues

    • Verify client secret hasn't expired
    • Ensure correct tenant ID

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT © Strainprint Technologies

Credits

Developed by Steve Adams for the MCP community.

Special thanks to Anthropic for the Model Context Protocol specification.