Dataverse MCP: praktický přehled

Dataverse MCP je způsob, jak připojit AI agenta k Microsoft Dataverse přes Model Context Protocol. Prakticky: agent nedostává jen textový kontext, ale sadu nástrojů pro čtení metadat, dotazování dat a případně i zápisy do Dataverse.

Nejdůležitější závěr: MCP není náhrada Dataverse security, ALM ani Web API. Je to agentický přístupový layer nad Dataverse. Hodí se pro PoC, asistenty a řízené interní scénáře, ale do produkce patří až po vyřešení oprávnění, auditů, prostředí a guardrailů.

Co je Dataverse MCP

MCP, Model Context Protocol, je otevřený protokol pro propojení LLM aplikací s externími daty a nástroji. Microsoft Dataverse může fungovat jako MCP server.

Standardní endpoint má tvar:

https://{dataverseOrgName}.crm.dynamics.com/api/mcp

Preview endpoint:

https://{dataverseOrgName}.crm.dynamics.com/api/mcp_preview

Preview endpoint ber jako testovací. Microsoft uvádí, že preview capabilities jsou určené pro evaluaci a feedback před GA; chování a seznam nástrojů se může měnit.

Jaké nástroje Dataverse MCP nabízí

Podle Microsoft Learn Dataverse MCP zpřístupňuje mimo jiné tyto tools:

Tool K čemu je
list_tables vypíše dostupné tabulky
describe_table vrátí schéma tabulky
read_query spustí SELECT dotaz pro čtení dat
create_record vytvoří řádek
update_record aktualizuje řádek
Delete Record smaže řádek
Create Table vytvoří tabulku
Update Table upraví schéma tabulky
Delete Table smaže tabulku
Search hledá v Dataverse záznamech
Fetch načte detail záznamu podle entity name a ID

Nejistota: přesný seznam tools se může lišit podle GA/preview endpointu a aktuální verze služby. Search navíc závisí na zapnutém Dataverse Search.

Architektura

1. Copilot Studio → Dataverse MCP → Dataverse

Nejvíc Microsoft-native varianta.

Tok:

  1. Admin povolí Dataverse MCP v prostředí.
  2. V Copilot Studio se agentovi přidá tool typu Model Context Protocol.
  3. Agent volá Dataverse MCP tools.
  4. Autorizace běží přes Microsoft identity a Dataverse security model.

Vhodné pro interní business agenty nad Dynamics 365 / Dataverse, pokud chceš zůstat v Microsoft governance modelu.

2. VS Code / GitHub Copilot → remote MCP endpoint → Dataverse

Vhodné pro vývojáře.

Typický scénář:

Pozor hlavně na správné cílení prostředí: DEV/UAT/PROD musí být jasně pojmenované.

3. Claude Desktop / Claude Code → @microsoft/dataverse proxy → Dataverse MCP

Pro non-Microsoft klienty Microsoft doporučuje lokální stdio proxy přes npm balíček @microsoft/dataverse.

Příklad:

npx -y @microsoft/dataverse mcp https://yourorg.crm.dynamics.com

Preview varianta:

npx -y @microsoft/dataverse mcp https://yourorg.crm.dynamics.com --preview

Claude Code příklad:

claude mcp add dataverse -t stdio -- npx -y @microsoft/dataverse mcp https://yourorg.crm.dynamics.com

Tahle varianta je praktická pro prototypy mimo Microsoft stack, ale přidává další komponentu: Node.js/npx, consent, login a troubleshooting proxy.

4. Vlastní MCP klient → direct remote endpoint → Dataverse

Enterprise varianta bez lokální proxy.

Obvykle vyžaduje:

  1. registraci aplikace v Microsoft Entra ID,
  2. permission Dynamics CRM → mcp.tools,
  3. přidání client ID do allowed MCP clients v Power Platform admin center,
  4. MCP klienta, který zvládne potřebný remote transport a auth flow.

Tohle bych volil až ve chvíli, kdy je jasný produkční use case a governance.

Předpoklady

Minimum pro PoC:

Důležité: Dataverse MCP respektuje standardní Dataverse security model — security roles, row-level security a field-level security. Uživatel přes MCP nemá vidět víc, než mu dovolí jeho role. Přesto to nenahrazuje návrh guardrailů pro agenta.

Praktické use cases

Rychlá explorace dat a schématu

Agent může odpovídat na otázky typu:

Hodí se pro konzultanty, analytiky a vývojáře, kteří jinak ručně sahají do Web API, FetchXML nebo SQL-like dotazů.

CRM / Dynamics 365 assistant

Agent může pomáhat s accounty, kontakty, opportunities nebo cases:

Zápisy bych v první fázi nepouštěl bez potvrzení člověkem.

Developer assistant pro Power Platform

Užitečné pro:

Pro schema změny stále používej solution-aware workflow a ALM. MCP není náhrada za pac, solutions, pipelines ani řízené deploymenty.

Vlastní agentický tool layer

Pokud stavíš vlastního agenta, Dataverse MCP může být standardní konektor místo ručně napsané integrace na Dataverse Web API. Výhoda je rychlost integrace. Nevýhoda je menší kontrola nad přesným chováním agenta a nutnost důkladně řešit bezpečnost.

Limity a rizika

1. Špatný tool call nebo zápis

Agent může vybrat špatnou tabulku, špatný záznam nebo špatnou operaci. Technicky ho zastaví hlavně oprávnění a guardraily.

Doporučení:

2. Produkce vs DEV/UAT

Největší praktické riziko je omyl v cílovém prostředí.

Doporučení:

3. Preview není stabilní kontrakt

/api/mcp_preview používej jen pro PoC a testy. Pro produkční scénáře preferuj /api/mcp.

4. Billing

Microsoft Learn uvádí, že od 15. 12. 2025 jsou Dataverse MCP tools zpoplatněny při přístupu AI agentů vytvořených mimo Microsoft Copilot Studio, s výjimkami podle licencí. Search tool je účtován jinak než ostatní tools.

Nejistota: konkrétní dopad je nutné ověřit proti aktuálním licencím a Copilot Credit pravidlům konkrétního tenantu.

5. Lokální proxy troubleshooting

U @microsoft/dataverse proxy mohou selhat:

Microsoft uvádí validační režim:

dataverse mcp https://myorg.crm.dynamics.com --validate

A debug logy:

dataverse mcp https://myorg.crm.dynamics.com --log-level Debug --log-file

Doporučení pro Zica

Krátká verze:

  1. Udělej PoC jen v DEV Dataverse prostředí.
  2. Použij standardní /api/mcp, ne preview.
  3. Začni read-only scénáři: list_tables, describe_table, read_query.
  4. Pro Claude Code / Desktop použij @microsoft/dataverse proxy.
  5. Pro VS Code zkus remote endpoint přes GitHub Copilot, pokud je klient povolený adminem.
  6. Zápisy povol až po ověření security rolí a jen s potvrzením člověkem.
  7. Produkci neotvírej pro zápisy, dokud nejsou vyřešené role, audit, naming prostředí a billing.

Doporučené agent instructions:

Pracuj jen proti Dataverse-DEV, pokud uživatel explicitně neřekne jinak.
Před každým zápisem ukaž environment URL, tabulku, ID záznamu a přesnou změnu.
Nikdy nemaž záznam bez explicitního potvrzení.
Při nejasném názvu tabulky nejdřív použij list_tables a describe_table.
Nezobrazuj citlivá pole, pokud nejsou nutná pro odpověď.

Shrnutí

Dataverse MCP je užitečná cesta, jak dát AI agentům řízený přístup k Dataverse datům a metadatům. Největší hodnota je v rychlé exploraci, vývojářské asistenci a interních CRM agentech.

Do produkce ale patří opatrně: MCP jen zpřístupní nástroje. Kvalitu a bezpečnost řeší až správné Dataverse role, environment strategie, audit, agent instructions a potvrzování rizikových operací.

Zdroje