Microsoft Dataverse now speaks the Model Context Protocol (MCP) — and that changes everything for how AI agents interact with your enterprise data. Whether you are running Dynamics 365 CRM, Finance & Supply Chain Management, or custom Power Platform applications, Dataverse MCP gives Claude Desktop and Claude Code direct, governed access to your business data. This is not a bolt-on integration. It is Microsoft and Anthropic building together on an open protocol, and it is the clearest signal yet that enterprise AI works best when the data platform and the AI platform are designed to cooperate.

In this guide, we walk through exactly how to configure Dataverse MCP across three layers — the Power Platform admin portal, your Dataverse environment, and Claude Desktop — so you can query, create, and manage records through natural language.

Better Together: Microsoft + Claude

Microsoft built Dataverse MCP as an open protocol with first-class support for third-party AI clients. Claude Desktop and Claude Code are explicitly listed as supported MCP clients alongside Copilot Studio and GitHub Copilot. The Dataverse plugin is available on the official Claude plugins marketplace. This is not a workaround — it is a designed integration path.

  • Microsoft provides the enterprise data layer — security, governance, compliance, and the unified data platform across D365 and Power Platform.
  • Claude provides the AI reasoning layer — natural language understanding, multi-step analysis, and agentic task execution.
  • Together you get secure enterprise data plus powerful AI analysis, without compromising on either side.

What Is the Dataverse MCP Server?

The Model Context Protocol is an open standard that defines how large language models connect to external data sources. When Dataverse acts as an MCP server, it exposes your environment's tables, records, and schemas through a standardized interface that any compliant MCP client can consume.

What makes this powerful is the breadth of data it unlocks:

  • Business data — custom Dataverse tables and records built in Power Apps
  • Dynamics 365 CRM — Sales, Customer Service, and Marketing data that lives natively in Dataverse
  • Dynamics 365 F&O / SCM — Finance and Supply Chain Management data, accessible when integrated with Dataverse via virtual tables or dual-write
  • Microsoft 365 signals — when used with the unified business data layer, emails, meetings, and documents can provide additional context

Once connected, Claude can list tables, describe schemas, run queries, create records, update records, and search across your entire Dataverse environment — all through natural language.

Prerequisites

Before you begin, confirm you have the following in place:

  • Power Platform Administrator role — required to access MCP server settings in the admin center
  • Managed Environment — Dataverse MCP configuration requires your environment to be set as a Managed Environment in PPAC
  • Claude Desktop — installed on your machine (download from claude.ai)
  • .NET 8 SDK — needed for the Dataverse MCP local proxy (Windows users can install via winget install Microsoft.DotNet.SDK.8)
  • Azure AD Global Admin or Privileged Role Admin — for the one-time tenant-level consent of the MCP client app

Note: By default, only the Microsoft Copilot Studio client is enabled for Dataverse MCP. Non-Microsoft clients like Claude must be explicitly enabled by a Power Platform administrator.

Step 1: Enable Dataverse MCP in the Power Platform Admin Center

This is the administrator-level configuration that allows your Dataverse environment to accept connections from MCP clients.

1.1 — Navigate to your environment settings

  1. Go to the Power Platform admin center at admin.powerplatform.microsoft.com
  2. Select Manage > Environments
  3. Select the environment where you want to enable MCP
  4. Select Settings > Product > Features
  5. Scroll down to find Dataverse Model Context Protocol
  6. Ensure "Allow MCP clients to interact with Dataverse MCP server" is turned ON

1.2 — Enable non-Microsoft clients

  1. Click Advanced Settings under the MCP section
  2. You will see a list of available MCP clients. By default, only Copilot Studio is enabled
  3. Open the client record for Claude (or "Non-Microsoft clients" depending on your version)
  4. Set Is Enabled to Yes
  5. Click Save & Close
  6. Repeat for any other clients you want to enable (GitHub Copilot, VS Code, etc.)

1.3 — Approve tenant-level consent

An Azure AD Global Admin or Privileged Role Admin must approve the MCP client app for your tenant. This is a one-time operation per tenant. If you are using the Dataverse plugin for Claude Code, it will generate the exact consent URL with your tenant ID and client ID pre-filled — a human just needs to click Accept.

Step 2: Install the Dataverse MCP Local Proxy

Claude Desktop connects to Dataverse through a local proxy tool. This proxy handles authentication and routes requests to your environment's /api/mcp endpoint.

2.1 — Install the .NET SDK

If you do not already have .NET 8 installed, run the following in PowerShell (as Administrator):

winget install Microsoft.DotNet.SDK.8

Select Y to agree to the terms. This installation may take a few minutes.

2.2 — Install the Microsoft Dataverse MCP proxy

Open a Command Prompt or terminal and run:

dotnet tool install --global --add-source https://api.nuget.org/v3/index.json Microsoft.PowerPlatform.Dataverse.MCP

This installs the Microsoft.PowerPlatform.Dataverse.MCP command globally on your machine.

2.3 — Gather your connection details

You need two pieces of information:

  • Tenant ID — Go to make.powerapps.com, select your environment, click Settings > Session Details, and copy the Tenant Id
  • Connection URL — Create a Dataverse connection in Power Automate (make.powerautomate.com > Connections > New Connection > Microsoft Dataverse > OAuth), authenticate, and copy the connection URL

Step 3: Configure Claude Desktop

With the proxy installed and your connection details ready, you can now configure Claude Desktop to connect to your Dataverse environment.

3.1 — Open the Claude Desktop configuration

  1. Open Claude Desktop
  2. Go to File > Settings
  3. Navigate to the Developer section
  4. Click Edit config — this opens claude_desktop_config.json in your default editor

3.2 — Add the Dataverse MCP server configuration

Paste the following JSON into claude_desktop_config.json, replacing the placeholder values with your own:

{
  "mcpServers": {
    "dataverse": {
      "command": "Microsoft.PowerPlatform.Dataverse.MCP",
      "args": [
        "--ConnectionUrl",
        "YOUR_CONNECTION_URL",
        "--MCPServerName",
        "DataverseMCPServer",
        "--TenantId",
        "YOUR_TENANT_ID",
        "--EnableHttpLogging",
        "true",
        "--EnableMsalLogging",
        "false",
        "--Debug",
        "false",
        "--BackendProtocol",
        "HTTP"
      ]
    }
  }
}

Replace:

  • YOUR_CONNECTION_URL with the connection URL from Step 2.3
  • YOUR_TENANT_ID with your Azure AD Tenant ID

3.3 — Restart Claude Desktop

Fully quit Claude Desktop (including from the system tray / taskbar), then relaunch it. Claude should prompt you for credentials to authenticate the MCP connection. Once authenticated, the Dataverse MCP server will appear as connected.

Tip: After connecting, ask Claude "What tables are available in my Dataverse environment?" to verify the connection is working. Claude will use the list_tables tool to show you everything accessible.

Alternative: The Dataverse Plugin for Claude Code

If you are using Claude Code (the CLI agent) rather than the desktop app, Microsoft has published an official Dataverse plugin on the Claude plugins marketplace. This streamlines the entire setup into a single command:

/plugin install dataverse@claude-plugins-official

The plugin automates:

  • Toolchain verification — checks for and installs Python 3, PAC CLI, .NET SDK, Azure CLI, Node.js, and the Dataverse CLI
  • Authentication — uses PAC CLI to create auth profiles and opens a Microsoft Entra sign-in window
  • Environment discovery — runs pac env list so you do not need to know your org URL in advance
  • MCP configuration — adds the Dataverse MCP server to Claude Code's .mcp.json project config
  • Connection verification — validates that MCP is live and credentials are correct

The plugin also intelligently routes requests: MCP handles conversational queries and small writes, while the Python SDK handles bulk operations like importing thousands of records, and the Web API handles advanced schema queries.

What You Can Do Once Connected

Once the Dataverse MCP server is connected, Claude gains access to a set of tools that cover the full range of data operations:

Tool What It Does
list_tables Lists all tables in your Dataverse environment
describe_table Returns the T-SQL schema of a specified table
read_query Executes SELECT queries to retrieve data
create_record Inserts a new row and returns the GUID
update_record Updates an existing row in a table
Search Keyword search across Dataverse records
Fetch Retrieves a full record by entity name and ID
Create Table Creates a new table with a specified schema
Delete Record Deletes a row from a table

In practice, this means you can ask Claude things like:

  • "Show me the top 10 open opportunities from Dynamics 365 Sales, sorted by estimated revenue"
  • "How many active cases are assigned to each support agent?"
  • "Create a new contact record for Jane Smith at Contoso with email jane@contoso.com"
  • "What is the schema of the account table? List all columns and their types."
  • "Find all purchase orders over $50,000 that are pending approval"

Security and Governance

One of the strongest aspects of the Dataverse MCP approach is that it does not bypass your existing security model. All access is governed by:

  • Tenant-level admin consent — an Azure AD Global Admin must approve the MCP client app before any connection is possible
  • Environment allowlisting — each Dataverse environment must explicitly allow the MCP client ID through the Power Platform Admin Center
  • Managed Environment requirement — MCP server configuration is only available for managed environments, ensuring governance policies are in place
  • Row-level security — Dataverse's existing security roles and business units still apply; the MCP server respects all access controls
  • Connector policies — administrators control which clients can connect through advanced settings and can disable MCP entirely if needed

Important: Disabling the Dataverse MCP server in PPAC stops all tools and agents that rely on it. Any ongoing AI integration testing using MCP will be interrupted. Plan your governance decisions accordingly.

Writing Effective Agent Instructions

When using Claude as an MCP-connected agent, clear instructions help Claude make better use of the available tools. Microsoft recommends structuring your agent instructions around three areas:

Define the role

Tell Claude what it is responsible for. For example: "You are an autonomous agent that manages customer data in Dataverse. You can query, create, update, and delete records using the MCP tools available to you."

Specify tool usage

Map tasks to tools. For example: "When the user asks about data, use read_query. When creating records, use create_record. Always call describe_table before querying a table you have not seen before."

Add reasoning guidance

Encourage Claude to think step by step. For example: "Before each tool call, plan the action and verify it conforms to the tool description. After each call, reflect on the result and determine the next step."

The Bigger Picture: AI That Understands Your Business

Dataverse MCP is not just a connectivity feature. It represents a shift in how enterprise AI works. Instead of exporting data, building custom connectors, or copying records into a separate system, you are giving AI a governed, real-time window into your business data.

Microsoft describes Dataverse as the "agent data platform" — the layer that gives agents not just data access, but real business understanding. When combined with Claude's reasoning capabilities, you get an AI that can:

  • Analyze sales pipeline data and identify bottlenecks
  • Cross-reference customer service cases with account history
  • Draft follow-up actions based on real CRM data
  • Query supply chain data to answer operational questions
  • Generate reports from live data without building dashboards

And because it all runs through Dataverse's security model, your data governance stays intact.

Getting Started

The fastest path to a working integration:

  1. Admin: Enable Dataverse MCP in PPAC and turn on the Claude client
  2. Install: Install the .NET SDK and the Dataverse MCP proxy tool
  3. Configure: Add the MCP server JSON to your Claude Desktop config
  4. Connect: Restart Claude Desktop, authenticate, and start querying

Or if you prefer the automated path with Claude Code:

/plugin install dataverse@claude-plugins-official

Either way, you will be talking to your Dataverse data through Claude in minutes.

Why This Matters

Microsoft and Anthropic are not competing here — they are complementary. Microsoft brings the enterprise data platform that businesses already depend on. Claude brings the AI reasoning that makes that data actionable. The Model Context Protocol is the bridge, and Dataverse MCP is the proof that enterprise AI works best when the data layer and the AI layer are designed to work together, not in isolation.

A8

AI8BI

Microsoft AI Consultancy — helping mid-market SMEs unlock the value of their data through AI. We specialise in Power Platform, Dynamics 365, and the intersection of Microsoft and Claude AI. ai8bi.com