MCP Dataverse

السجل الرسمي الأمن

Microsoft Dataverse MCP server: CRUD, FetchXML, metadata, schema, audit, batch and security roles.

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

NPM package mcp-dataverse
Claude Code
claude mcp add mcp-dataverse -e 'MCP_CONFIG_PATH=<MCP_CONFIG_PATH>' -e 'DATAVERSE_ENV_URL=<DATAVERSE_ENV_URL>' -- npx -y mcp-dataverse@0.7.10
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "mcp-dataverse": {
            "command": "npx",
            "args": [
                "-y",
                "mcp-dataverse@0.7.10"
            ],
            "env": {
                "MCP_CONFIG_PATH": "<MCP_CONFIG_PATH>",
                "DATAVERSE_ENV_URL": "<DATAVERSE_ENV_URL>"
            }
        }
    }
}

متغيرات البيئة

  • MCP_CONFIG_PATH Path to a config.json file (overrides all other env vars). Recommended for VS Code / Claude Desktop setups.
  • DATAVERSE_ENV_URL Your Dataverse environment URL

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. MCP Dataverse
  2. Why MCP Dataverse?
  3. Install
  4. Update
  5. Authentication
  6. Capabilities
  7. HTTP Transport
  8. Troubleshooting
  9. Performance Tip
  10. Roadmap
  11. License

MCP Dataverse

An MCP server for Microsoft Dataverse.

100 tools · 4 resources · 5 guided workflows · Three auth modes

→ 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} as both text and MCP structuredContent (with a declared outputSchema on all core tools)
  • Guardrails — every tool declares read-only or destructive hints, and the riskiest operations require an explicit confirm: true
  • Encrypted token cache — AES-256-GCM cached credentials, kept out of tool output

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.

Update

npx mcp-dataverse update

No re-config required — just checks your existing setup and shows what changed. npx auto-fetches the latest version on each run, so simply restarting your MCP client is enough to get the new tools.


Authentication

Three modes — choose based on where the server runs:

ModeWhen to use
Device Code (default)Local development — interactive Microsoft login, token cached on disk
Client CredentialsUnattended: CI/CD, Docker, Azure services — authMethod: "client-credentials" + App Registration
Managed IdentityAzure-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

CategoryCountDescription
Metadata9Tables, schema, relationships, option sets, entity keys
Query3OData, FetchXML, paginated retrieval
CRUD6Get, create, update, delete, upsert, assign
Relations4Associate, associate bulk, disassociate, query associations
Actions & Functions6Bound/unbound Dataverse actions and functions
Batch1Up to 1000 operations atomically
Solutions2Publish customizations, create sitemap
Search1Full-text Relevance Search
Users & Teams4Users, roles, teams, role assignment
RBAC7Role privileges: list, assign, remove, add, replace, get, team
Files2Upload/download file and image columns
Audit & Trace3Audit log, plugin trace logs, workflow trace logs
Annotations2Notes and file attachments
Customization4Custom actions, plugins, env variables, connection references
Attributes4Create, update, delete columns; lookup column type
Schema (write)2Create custom tables and relationships
Record Access4Check, grant, revoke record sharing; merge records
Assistance2Tool 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
Env varDefaultDescription
MCP_TRANSPORTstdiohttp enables the HTTP transport
MCP_HTTP_PORT3000Listen port (/mcp endpoint, /health probe)
MCP_HTTP_SECRET / BEARER_TOKEN—Static bearer token for inbound auth
ENTRA_TENANT_ID + ENTRA_CLIENT_ID—Validate inbound tokens as Entra v2.0 JWTs (RFC 9728 discovery auto-enabled)
MCP_HTTP_SESSION_TTL_MS1800000Idle session eviction timeout (30 min; 0 disables)
MCP_HTTP_REQUIRE_AUTH—true = refuse to start with no inbound auth configured
MCP_HTTP_CORS_ORIGIN*Allowed CORS origin — lock this down for hosted deployments
MCP_HTTP_JSON_RESPONSEtrueJSON responses (false = SSE streaming)

Connect using VS Code / Copilot with:

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

Troubleshooting

SymptomFix
No sign-in promptOpen View → Output → MCP — the device code is displayed there
No MSAL accounts foundRun npx mcp-dataverse-auth then restart the server
Authentication timed outRestart the MCP server — a fresh code is generated automatically
Server not appearing in Agent modeRun npx mcp-dataverse install or npx mcp-dataverse doctor
HTTP errorsRun 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

VersionFeatureStatus
v0.4HTTP transport + attribute management + schema consistency✅ Released
v0.5Enterprise auth (Client Credentials, Managed Identity, Entra JWT)✅ Released
v0.6MCP Prompts (5 templates) + MCP Resources (4)✅ Released
v0.7Schema write (create table/relationship) + Record Access (share, merge)✅ Released (v0.7.5)

→ Full Roadmap


License

MIT © Ali Taggaz

الأسئلة الشائعة

ما هو MCP Dataverse؟

Microsoft Dataverse MCP server: CRUD, FetchXML, metadata, schema, audit, batch and security roles.

كيف أثبّت MCP Dataverse؟

يعمل على جهازك. في Claude Code: claude mcp add mcp-dataverse -e 'MCP_CONFIG_PATH=<MCP_CONFIG_PATH>' -e 'DATAVERSE_ENV_URL=<DATAVERSE_ENV_URL>' -- npx -y mcp-dataverse@0.7.10. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج MCP Dataverse إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل MCP Dataverse مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون MCP Dataverse؟

ينشره codeurali. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.