The most complete MCP server for Microsoft Dataverse.
73 tools · 4 resources · 10 guided workflows · Zero config auth
AI agents hallucinate schema, guess column names, and build broken OData queries. This server gives them real-time access to your Dataverse environment — schema, records, metadata, solutions — through the Model Context Protocol.
- No Azure AD app registration — device code flow, zero pre-configuration
- Works with any MCP client — VS Code, Claude, Cursor, Windsurf, Gemini, Codex CLI
- Atomic tools — each tool does one thing well; the AI picks the right one
- Structured outputs — every response returns
{summary, data, suggestions} - Guardrails — destructive operations require explicit confirmation
- Encrypted tokens — AES-256-GCM cached credentials, never logged
npx mcp-dataverse installThe interactive wizard configures your environment, registers the server in VS Code, and authenticates your Microsoft account in under 2 minutes.
Requires Node.js 20+. For other clients (Claude, Cursor, Windsurf…) see Multi-Client Setup.
No PAC CLI, no app registration, no client secret. Uses Microsoft's device code flow (MSAL):
- First tool call → a sign-in code appears in the MCP Output panel (
View → Output → MCP) - Open
https://microsoft.com/devicelogin→ enter the code → sign in with your work account - Done. Token is cached encrypted — all future starts are silent
Re-authenticate after ~90 days of inactivity: npx mcp-dataverse-auth
| Category | Count | Description |
|---|---|---|
| Metadata | 8 | Tables, schema, relationships, option sets, entity keys |
| Query | 3 | OData, FetchXML, paginated retrieval |
| CRUD | 6 | Get, create, update, delete, upsert, assign |
| Actions & Functions | 6 | Bound/unbound Dataverse actions and functions |
| Batch | 1 | Up to 1000 operations atomically |
| Solutions | 3 | List solutions, components, publish customizations |
| Search | 1 | Full-text Relevance Search |
| Users & Teams | 3 | Users, roles, teams |
| Files | 2 | Upload/download file and image columns |
| + more | … | Audit, trace logs, delta tracking, impersonation, annotations… |
| Assistance | 4 | Tool router, workflow guide |
Run as an HTTP server for multi-client use:
MCP_TRANSPORT=http MCP_HTTP_PORT=3000 MCP_HTTP_SECRET=mysecret node dist/server.jsConnect using VS Code / Copilot with:
{
"servers": {
"dataverse": {
"type": "http",
"url": "http://localhost:3000/mcp",
"headers": {
"Authorization": "Bearer mysecret"
}
}
}
}| Symptom | Fix |
|---|---|
| No sign-in prompt | Open View → Output → MCP — the device code is displayed there |
No MSAL accounts found |
Run npx mcp-dataverse-auth then restart the server |
Authentication timed out |
Restart the MCP server — a fresh code is generated automatically |
| Server not appearing in Agent mode | Run npx mcp-dataverse install or npx mcp-dataverse doctor |
| HTTP errors | Run npx mcp-dataverse doctor to diagnose config and connectivity |
MCP Dataverse is designed to be comprehensive, but most AI models work best with fewer tools in context. Deselect the tools you don't need in your client's tool picker (e.g. VS Code Chat panel) to keep the agent focused and responsive.
| Version | Feature | Status |
|---|---|---|
| v0.4 | HTTP transport + attribute management + schema consistency | ✅ Released |
| v0.5 | Enterprise auth (Client Credentials, Managed Identity) + MCP Prompts | 🔴 Planned |