Talk to Your Data: Connecting Claude AI with Microsoft Power Platform
Z
Zack Saadioui
8/11/2025
Here’s the thing about business data. It’s often locked up tight. Stuck in databases, ERPs, & CRMs, where you need special reports or technical know-how to get to it. On the other side, you have these incredibly powerful AI models like Claude that can write, reason, & analyze like a human. The million-dollar question has always been: how do you get these two to talk to each other in a meaningful way?
Honestly, it's been a bit clunky. You'd have to export data, build complex APIs, & stitch together a bunch of services. But things are changing. FAST.
I've been deep in the weeds with the Microsoft Power Platform & AI lately, & I've stumbled upon something that feels like a genuine game-changer. We're going to talk about integrating Anthropic's Claude AI with the Power Platform. But we're not just going to do it the old-fashioned way. We’re going to look at a brand-new method that lets you literally talk to your business data, plus the tried-and-true method for when you need more control.
So, grab a coffee. This is the deep-dive you've been looking for.
The Future is Now: Direct Integration with a Dataverse MCP Server
First, let's break down the alphabet soup.
Dataverse: Think of this as the brainy, secure, cloud-based filing cabinet for the Power Platform. It’s where your Power Apps & Dynamics 365 data lives. It’s not just a database; it has security, logic, & all sorts of business-y stuff built in.
MCP (Model Context Protocol): This is the magic ingredient. MCP is an open-source protocol that acts as a universal translator between AI models & data sources. It creates a standardized bridge so an AI like Claude can securely access & use tools or data from another system without a bunch of custom coding. Think of it like a USB-C port for AI—one standard to connect everything.
So, a Dataverse MCP Server is basically you telling your Dataverse environment, "Hey, I want you to speak MCP so AI models can talk to you." This enables AI clients—like the Claude Desktop app—to interact with your Dataverse tables, records, & more using natural language. Pretty cool, right?
Why This is a Big Deal
Instead of building a complex workflow to, say, find a customer's information, you can just ask. You could type, "show me the latest orders for Contoso Corp," & the MCP client would translate that, send it to the Dataverse MCP Server, & get the data back for you. It's conversational, it's intuitive, & it's POWERFUL.
How to Set Up the Dataverse MCP Server (The Nitty-Gritty)
Okay, so how do you actually do this? A heads-up: this feature is still in preview, so things might change, but here’s the gist of how it works right now. It's a bit technical, but totally doable.
Step 1: Get the Prerequisites in Order
First, you need a few things before you start.
A Power Platform Environment with Dataverse: This is where your data lives.
.NET 8.0 SDK: The MCP server runs as a local proxy on your machine, & it needs the .NET 8.0 SDK to function. You can install this with a quick download from Microsoft.
Azure App Registration (The "Right" Way): For a proper, secure setup, you'll want to register an application in your Azure Active Directory (now Microsoft Entra ID).
Go to the Azure Portal, navigate to App registrations, & create a new one.
Give it a name like "Dataverse MCP Access."
Under "Certificates & secrets," create a new client secret. COPY THIS VALUE IMMEDIATELY. You won't see it again.
You'll need three pieces of info from this app registration: the Tenant ID, the Client ID, & the Client Secret you just created.
Step 2: Install the Dataverse MCP Server Local Proxy
This is the piece of software that runs on your computer & connects the AI client (Claude Desktop) to your actual Dataverse in the cloud. You’ll typically install this using instructions provided by Microsoft, which might involve a PowerShell command or a simple installer.
Step 3: Create a Dataverse Connection
You need to establish a formal connection to get the specific URL the MCP server will use.
Go to Power Automate (
1
make.powerautomate.com
).
On the left, find Connections & click
New connection
.
Search for "Dataverse" & select the main Microsoft Dataverse connector.
Follow the on-screen prompts to create the connection. This authenticates you & creates a link that the MCP tools can use.
Connecting Your AI Client: The Claude Desktop App
Now for the fun part. Once the server-side stuff is ready, you need to tell your AI client where to find it. We'll use the official Claude Desktop app as our example.
Step 1: Install Claude Desktop
If you don’t have it already, download it from the Anthropic website. It’s available for Windows & macOS.
Step 2: Configure the Connection
You have two main ways to do this: the manual way & the new, easy way.
The Manual Way (Editing the JSON):
In the Claude Desktop app, go to
1
File > Settings
.
Navigate to the "Developer" tab.
You'll see a section for MCP servers. Click Edit Config.
This will open a
1
claude_desktop_config.json
file in a text editor.
Here, you'll add an entry that tells Claude how to start the MCP server proxy you installed & how to connect to it. It will look something like this, using the Connection URL & Tenant ID you gathered earlier.
The Easy Way (Desktop Extensions - .dxt files):
Anthropic realized that editing JSON files is a bit of a pain. So they introduced Desktop Extensions (
1
.dxt
files). These are single, installable packages that bundle up the MCP server & all its dependencies.
You'll download a
1
.dxt
file for the Dataverse MCP server.
You just double-click it.
Claude Desktop will open, show you what the extension does, & ask you to click "Install."
That's it. It handles the configuration for you. This is definitely the future.
Once connected, a little tool icon will appear in your Claude Desktop prompt bar. You can now start asking questions about your Dataverse data in plain English. This is HUGE for "citizen developers" & business analysts who know their data but don't want to write complex queries.
The Classic Way: Integrating the Claude API with Power Automate
Okay, the MCP server is amazing for direct, conversational data access. But what if you need to build a more complex, multi-step business process? Like, "When a new high-priority support ticket is created in Dataverse, I want to send the details to Claude to analyze the sentiment, then based on the sentiment, post a message in a specific Microsoft Teams channel & assign a task to a senior support agent."
For that kind of structured workflow, the classic API integration via a Power Automate Custom Connector is still the king.
Why Use This Method?
This approach gives you granular control. Each step is an explicit action in a Power Automate flow. It’s less about conversational querying & more about workflow automation.
How to Build a Custom Connector for Claude
It sounds intimidating, but it's surprisingly straightforward. You're basically teaching Power Automate how to talk to the Claude API.
Step 1: Get Your Claude API Key
Go to the Anthropic console (website).
Create a developer account & generate an API key. Store this somewhere safe, like a password manager. You'll need it in a minute.
Step 2: Start the Custom Connector in Power Automate
In the Power Automate portal, go to ... More > Discover all.
In the "Data" section, you'll find Custom connectors.
Click
New custom connector
and choose "Create from blank."
Step 3: The General Tab
Upload a logo: Use the Claude logo to make it look professional.
Host: This is crucial. Enter
1
api.anthropic.com
.
Base URL: Leave this as
1
/
.
Step 4: The Security Tab
This is where you tell Power Automate how to authenticate.
Authentication type: Select API Key.
Parameter label: Give it a friendly name, like
1
Claude API Key
.
Parameter name: This MUST be
1
x-api-key
. This comes directly from the Claude API documentation.
Parameter location: Set this to Header.
Step 5: The Definition Tab (The Core Logic)
This is where you define the "actions" the connector can perform. We'll create one to send a message to Claude.
Click
New action
.
Give it a Summary (e.g., "Generate Claude Response"), a Description, & an Operation ID (e.g.,
1
generateResponse
).
Under Request, click
Import from sample
.
Verb: Select POST.
URL: Enter
1
https://api.anthropic.com/v1/messages
.
Headers: You'll need to add
1
Content-Type
and
1
anthropic-version
. A typical value for the version is
1
2023-06-01
.
Body: This is the most important part. You need to provide a sample JSON payload. This tells Power Automate what information to ask for in the flow. A simple one looks like this: