Skip to main content
Glama
codeurali

MCP Dataverse

MCP Dataverse

The most complete MCP server for Microsoft Dataverse.

79 tools · 4 resources · 10 guided workflows · Three auth modes

npm npm downloads CI Node 20+ TypeScript License: MIT

→ Full Documentation


Why MCP Dataverse?

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.

  • Three auth modes — device code (local), client credentials (CI/CD), managed identity (Azure-hosted)

  • 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


Install

npx mcp-dataverse install

The 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.


Authentication

Three modes — choose based on where the server runs:

Mode

When to use

Device Code (default)

Local development — interactive Microsoft login, token cached on disk

Client Credentials

Unattended: CI/CD, Docker, Azure services — authMethod: "client-credentials" + App Registration

Managed Identity

Azure-hosted (App Service, Container Apps) — zero secrets, authMethod: "managed-identity"

Device code quick start: authentication triggers on the first tool call.

  1. Open View → Output → MCP — a sign-in code appears

  2. Go to https://microsoft.com/devicelogin, enter the code, sign in with your work account

  3. Token is cached encrypted — all future starts are silent

For client credentials and managed identity setup, see Authentication docs.


Capabilities

Category

Count

Description

Metadata

9

Tables, schema, relationships, option sets, entity keys

Query

3

OData, FetchXML, paginated retrieval

CRUD

6

Get, create, update, delete, upsert, assign

Relations

4

Associate, associate bulk, disassociate, query associations

Actions & Functions

6

Bound/unbound Dataverse actions and functions

Batch

1

Up to 1000 operations atomically

Solutions

2

Publish customizations, create sitemap

Search

1

Full-text Relevance Search

Users & Teams

4

Users, roles, teams, role assignment

RBAC

7

Role privileges: list, assign, remove, add, replace, get, team

Files

2

Upload/download file and image columns

Audit & Trace

3

Audit log, plugin trace logs, workflow trace logs

Annotations

2

Notes and file attachments

Customization

4

Custom actions, plugins, env variables, connection references

Attributes

4

Create, update, delete columns; lookup column type

Schema (write)

2

Create custom tables and relationships

Record Access

4

Check, grant, revoke record sharing; merge records

Assistance

2

Tool router, tool tags

+ more

Delta sync, impersonation, views, business units, duplicate detection

→ Full Capabilities Reference


HTTP Transport

Run as an HTTP server for multi-client use:

MCP_TRANSPORT=http MCP_HTTP_PORT=3000 MCP_HTTP_SECRET=mysecret node dist/server.js

Connect using VS Code / Copilot with:

{
  "servers": {
    "dataverse": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "headers": {
        "Authorization": "Bearer mysecret"
      }
    }
  }
}

Troubleshooting

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


Performance Tip

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.


Roadmap

Version

Feature

Status

v0.4

HTTP transport + attribute management + schema consistency

✅ Released

v0.5

Enterprise auth (Client Credentials, Managed Identity, Entra JWT)

✅ Released

v0.6

MCP Prompts (5 templates) + MCP Resources (4)

✅ Released

v0.7

Schema write (create table/relationship) + Record Access (share, merge)

✅ Released (v0.7.5)

→ Full Roadmap


License

MIT © Ali Taggaz

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/codeurali/mcp-dataverse'

If you have feedback or need assistance with the MCP directory API, please join our Discord server