drio
Open app

powerplatform mcp/cli

Source

A Model Context Protocol (MCP) server and standalone CLI for querying PowerPlatform / Dataverse environments. Supports multiple environments, entity metadata, records, plugins, flows, solutions, workflows, business rules, security roles, and more.

Catalog onlyCatalog onlySTDIO

Overview

PowerPlatform MCP is a Model Context Protocol (MCP) server that provides intelligent access to PowerPlatform/Dataverse entities and records, offering context-aware assistance, entity exploration, and metadata access.

To use PowerPlatform MCP, install it globally using npm or run it directly with npx. Configure the necessary environment variables for PowerPlatform/Dataverse connection details before running the server.

  • Rich entity metadata exploration with formatted, context-aware prompts - Advanced OData query support with intelligent filtering - Comprehensive relationship mapping and visualization - AI-assisted query building and data modeling through an AI agent - Full access to entity attributes, relationships, and global option sets
  1. Exploring and retrieving metadata for PowerPlatform entities.
  2. Building complex OData queries for data retrieval.
  3. Visualizing relationships between different entities in Dataverse.
  4. Assisting developers in understanding and utilizing PowerPlatform data models.

Add to your AI client

Use these steps to connect powerplatform mcp/cli in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "powerplatform-mcp-michsob": {
      "command": "npx",
      "args": [
        "-y",
        "powerplatform-mcp"
      ],
      "env": {
        "POWERPLATFORM_DEV_CLIENT_ID": "...",
        "POWERPLATFORM_DEV_CLIENT_SECRET": "...",
        "POWERPLATFORM_DEV_TENANT_ID": "...",
        "POWERPLATFORM_DEV_URL": "https://dev-org.crm.dynamics.com",
        "POWERPLATFORM_ENVIRONMENTS": "DEV,UAT,PROD",
        "POWERPLATFORM_UAT_CLIENT_ID": "...",
        "POWERPLATFORM_UAT_CLIENT_SECRET": "...",
        "POWERPLATFORM_UAT_TENANT_ID": "...",
        "POWERPLATFORM_UAT_URL": "https://uat-org.crm.dynamics.com"
      }
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "powerplatform-mcp-michsob": {
      "command": "npx",
      "args": [
        "-y",
        "powerplatform-mcp"
      ],
      "env": {
        "POWERPLATFORM_DEV_CLIENT_ID": "...",
        "POWERPLATFORM_DEV_CLIENT_SECRET": "...",
        "POWERPLATFORM_DEV_TENANT_ID": "...",
        "POWERPLATFORM_DEV_URL": "https://dev-org.crm.dynamics.com",
        "POWERPLATFORM_ENVIRONMENTS": "DEV,UAT,PROD",
        "POWERPLATFORM_UAT_CLIENT_ID": "...",
        "POWERPLATFORM_UAT_CLIENT_SECRET": "...",
        "POWERPLATFORM_UAT_TENANT_ID": "...",
        "POWERPLATFORM_UAT_URL": "https://uat-org.crm.dynamics.com"
      }
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "powerplatform-mcp-michsob": {
      "command": "npx",
      "args": [
        "-y",
        "powerplatform-mcp"
      ],
      "env": {
        "POWERPLATFORM_DEV_CLIENT_ID": "...",
        "POWERPLATFORM_DEV_CLIENT_SECRET": "...",
        "POWERPLATFORM_DEV_TENANT_ID": "...",
        "POWERPLATFORM_DEV_URL": "https://dev-org.crm.dynamics.com",
        "POWERPLATFORM_ENVIRONMENTS": "DEV,UAT,PROD",
        "POWERPLATFORM_UAT_CLIENT_ID": "...",
        "POWERPLATFORM_UAT_CLIENT_SECRET": "...",
        "POWERPLATFORM_UAT_TENANT_ID": "...",
        "POWERPLATFORM_UAT_URL": "https://uat-org.crm.dynamics.com"
      }
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "powerplatform-mcp-michsob": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "powerplatform-mcp"
      ],
      "env": {
        "POWERPLATFORM_DEV_CLIENT_ID": "...",
        "POWERPLATFORM_DEV_CLIENT_SECRET": "...",
        "POWERPLATFORM_DEV_TENANT_ID": "...",
        "POWERPLATFORM_DEV_URL": "https://dev-org.crm.dynamics.com",
        "POWERPLATFORM_ENVIRONMENTS": "DEV,UAT,PROD",
        "POWERPLATFORM_UAT_CLIENT_ID": "...",
        "POWERPLATFORM_UAT_CLIENT_SECRET": "...",
        "POWERPLATFORM_UAT_TENANT_ID": "...",
        "POWERPLATFORM_UAT_URL": "https://uat-org.crm.dynamics.com"
      }
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "powerplatform-mcp-michsob": {
      "command": "npx",
      "args": [
        "-y",
        "powerplatform-mcp"
      ],
      "env": {
        "POWERPLATFORM_DEV_CLIENT_ID": "...",
        "POWERPLATFORM_DEV_CLIENT_SECRET": "...",
        "POWERPLATFORM_DEV_TENANT_ID": "...",
        "POWERPLATFORM_DEV_URL": "https://dev-org.crm.dynamics.com",
        "POWERPLATFORM_ENVIRONMENTS": "DEV,UAT,PROD",
        "POWERPLATFORM_UAT_CLIENT_ID": "...",
        "POWERPLATFORM_UAT_CLIENT_SECRET": "...",
        "POWERPLATFORM_UAT_TENANT_ID": "...",
        "POWERPLATFORM_UAT_URL": "https://uat-org.crm.dynamics.com"
      }
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "powerplatform-mcp-michsob": {
      "command": "npx",
      "args": [
        "-y",
        "powerplatform-mcp"
      ],
      "env": {
        "POWERPLATFORM_DEV_CLIENT_ID": "...",
        "POWERPLATFORM_DEV_CLIENT_SECRET": "...",
        "POWERPLATFORM_DEV_TENANT_ID": "...",
        "POWERPLATFORM_DEV_URL": "https://dev-org.crm.dynamics.com",
        "POWERPLATFORM_ENVIRONMENTS": "DEV,UAT,PROD",
        "POWERPLATFORM_UAT_CLIENT_ID": "...",
        "POWERPLATFORM_UAT_CLIENT_SECRET": "...",
        "POWERPLATFORM_UAT_TENANT_ID": "...",
        "POWERPLATFORM_UAT_URL": "https://uat-org.crm.dynamics.com"
      }
    }
  }
}

FAQ

What is the purpose of PowerPlatform MCP?

It provides intelligent access to PowerPlatform entities and assists in data exploration and query building.

How do I install PowerPlatform MCP?

You can install it globally using npm or run it directly with npx.

What kind of queries can I build with PowerPlatform MCP?

You can build advanced OData queries with intelligent filtering and context-aware prompts.