Dynamics 365 MCP Server ð
ããŒã«ã«Dynamics 365 MCP Server ð ã«ã€ããŠ
Dynamics 365 MCP Server ã¯ãMicrosoft Dynamics 365 åãã® MCP ãµãŒããŒã§ããClaude Desktop ãªã©ã®ã¯ã©ã€ã¢ã³ããã CRM ããŒã¿ã®åç §ãšæŽæ°ãè¡ããŸããDynamics 365 ãå©çšããããŒã åãã§ãAzure AD ã¢ããªã±ãŒã·ã§ã³ãçšããŠèªèšŒããŸãã
äž»ãªæ©èœ
- 01èªèšŒæžã¿ãŠãŒã¶ãŒã®æ å ±ååŸ
- 02å šã¢ã«ãŠã³ãã®ååŸ
- 03ã¢ã«ãŠã³ãã«çŽã¥ãåè«ã®äžèŠ§è¡šç€º
- 04ã¢ã«ãŠã³ãã®äœæãšæŽæ°
掻çšã·ãŒã³
- 01Claude Desktop ãã Dynamics 365 ã®ã¢ã«ãŠã³ããšåè«ãç §äŒ
- 02èªç¶èšèªã®äŸé Œã«ãã CRM ã¢ã«ãŠã³ãæ å ±ã®æŽæ°
MCP 察å¿
æ¬ãããžã§ã¯ã㯠MCP ãµãŒããŒãšããŠããŠãŒã¶ãŒãã¢ã«ãŠã³ããåè«ã«é¢ããæäœãããŒã«ãšã㊠MCP ã¯ã©ã€ã¢ã³ãã«æäŸããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ãã®ãµãŒããŒã®ããã±ãŒãžããªã¢ãŒããšã³ããã€ã³ãã¯ãŸã ååŸã§ããŠããŸããããããžã§ã¯ãã® README ã®æé ã«åŸã£ãŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
Dynamics 365 MCP ãµãŒã㌠ð
æŠèŠ
Microsoft Dynamics 365 MCP Server ã¯ãAnthorpic ã® Model Context Protocol(MCP) ã䜿çšã㊠Microsoft Dynamics 365 ãšé£æºããããã®ããŒã«ãæäŸãã MCP ãµãŒããŒã§ãããŠãŒã¶ãŒæ å ±ãã¢ã«ãŠã³ããã¢ã«ãŠã³ãã«é¢é£ä»ããããåè«ã®ååŸãClaude Desktop ããã®ã¢ã«ãŠã³ãã®äœæãæŽæ°ãªã©ãããŸããŸãªæäœãå®è¡ã§ããŸãã
ãã®ãããžã§ã¯ãã§ã¯ãMCP ãµãŒããŒãšããŒã«ã®å®è£
ã« @modelcontextprotocol/sdk ã©ã€ãã©ãªã䜿çšããããŒã¿æäœã®ããã« Dynamics 365 API ãšé£æºããŸãã
ããŒã«äžèЧ ð ïž
| ããŒã«å | 説æ | å ¥å | åºå |
|---|---|---|---|
get-user-info | çŸåšèªèšŒãããŠãããŠãŒã¶ãŒã®æ å ±ãååŸããŸãã | ãªã | ååããŠãŒã¶ãŒ IDãããžãã¹ãŠããã ID ãªã©ã®ãŠãŒã¶ãŒæ å ±ã |
fetch-accounts | Dynamics 365 ãããã¹ãŠã®ã¢ã«ãŠã³ããååŸããŸãã | ãªã | JSON 圢åŒã®ã¢ã«ãŠã³ãäžèЧã |
get-associated-opportunities | æå®ããã¢ã«ãŠã³ãã«é¢é£ä»ããããåè«ãååŸããŸãã | accountIdïŒæååãå¿
é ïŒ | JSON 圢åŒã®åè«äžèЧã |
create-account | Dynamics 365 ã«æ°ããã¢ã«ãŠã³ããäœæããŸãã | ã¢ã«ãŠã³ãã®è©³çްãå«ã accountDataïŒãªããžã§ã¯ããå¿
é ïŒã | äœæãããã¢ã«ãŠã³ãã®è©³çްïŒJSON 圢åŒïŒã |
update-account | Dynamics 365 ã®æ¢åã®ã¢ã«ãŠã³ããæŽæ°ããŸãã | accountIdïŒæååãå¿
é ïŒãæŽæ°å
容ãå«ã accountDataïŒãªããžã§ã¯ããå¿
é ïŒã | æŽæ°ãããã¢ã«ãŠã³ãã®è©³çްïŒJSON 圢åŒïŒã |
åææ¡ä»¶ ð
ãããžã§ã¯ããã»ããã¢ããããåã«ã次ã®ãã®ãã€ã³ã¹ããŒã«ãããŠããããšã確èªããŠãã ããã
- Node.jsïŒv16 以éïŒ
- NPMïŒNode Package ManagerïŒ
- API ã¢ã¯ã»ã¹ãå¯èœãª Dynamics 365 ã€ã³ã¹ã¿ã³ã¹
- Dynamics 365 API ã¢ã¯ã»ã¹çšã«æ§æããã Azure Active DirectoryïŒAADïŒã¢ããªã±ãŒã·ã§ã³
èšå®æé âïž
以äžã®æé ã«åŸã£ãŠããããžã§ã¯ããããŒã«ã«ã§ã»ããã¢ããããŠå®è¡ããŠãã ããã
1. ãªããžããªãã¯ããŒã³ãã
git clone https://github.com/your-repo/dynamics365-mcp-server.git
cd dynamics365-mcp-server
2. äŸåé¢ä¿ãã€ã³ã¹ããŒã«ãã
npm install
3. ç°å¢å€æ°ãèšå®ãã
ãããžã§ã¯ãã®ã«ãŒãã« .env ãã¡ã€ã«ãäœæããæ¬¡ã®å€æ°ã远å ããŸãã
CLIENT_ID=your-client-id
CLIENT_SECRET=your-client-secret
TENANT_ID=your-tenant-id
D365_URL=https://your-org.crm.dynamics.com
4. TypeScript ãã¡ã€ã«ãã³ã³ãã€ã«ãã
npm run build
4. MCP ãµãŒããŒãå®è¡ãã
node build\index.js
次ã®åºåã衚瀺ãããŸãã
Dynamics365 MCP server running on stdio...
5. ïŒä»»æïŒMCP ãµãŒããŒã Claude Desktop ã«ç»é²ãã
- Claude Desktop ãã€ã³ã¹ããŒã«ãã
- Settings > Developer > Edit Config ã«ç§»åãã
- claude_desktop_config.json ãç·šéãã
{
"mcpServers": {
"Dynamics365": {
"command": "node",
"args": [
"<Path to your MCP server build file ex: rootfolder/build/index.js>"
],
"env": {
"CLIENT_ID": "<D365 Client Id>",
"CLIENT_SECRET": "<D365 Client Secret>",
"TENANT_ID": "<D365 Tenant ID>",
"D365_URL": "Dynamics 365 url"
}
}
}
}
-
Claude Desktop ãåèµ·åãã
-
ããã§ãããã³ãããŠã£ã³ããŠã«ãµãŒããŒã®ããŒã«ã衚瀺ãããŸã

-
ããŒã« get-user-info ãåŒã³åºããŠãããã³ããããã¹ãããŠã¿ãŸããã

6. ïŒä»»æïŒMCP Interceptor ã䜿ã£ãŠããŒã«ããã¹ããã
- ã¿ãŒããã«ã§ä»¥äžã®ã³ãã³ããå®è¡ããŸã
npx @modelcontextprotocol/inspector node build/index.js

-
ð http://localhost:5173 ð ã«ã¢ã¯ã»ã¹ããŸã

-
ããã§ãµãŒããŒã«æ¥ç¶ããŠããã¹ãŠã®ããŒã«ããã¹ãã§ããŸãïŒïŒ
ãããã° ð
åé¡ãçºçããå Žåã¯ã以äžã確èªããŠãã ããã
åé¡ãçºçããå Žåã¯ã以äžã確èªããŠãã ããã
- .env ãã¡ã€ã«ãæ£ããèšå®ãããŠããããšã
- Azure AD ã¢ããªã±ãŒã·ã§ã³ã« Dynamics 365 API ã«å¿ èŠãªæš©éãããããšã
- Dynamics 365 ã€ã³ã¹ã¿ã³ã¹ã«ç°å¢ããã¢ã¯ã»ã¹ã§ããããšã
- åé¡ã®è¿œè·¡ã«ã¯ãã³ãŒãã«ãããã°ãã°ã远å ããããšãã§ããŸããäŸïŒ
console.error("Debugging: Loaded environment variables:", process.env);
ã³ã³ããªãã¥ãŒã·ã§ã³ ð€
ã³ã³ããªãã¥ãŒã·ã§ã³ãæè¿ããŸãïŒãã°ãæ©èœãªã¯ãšã¹ããããã°ããã«ãªã¯ãšã¹ããéä¿¡ããããIssue ãäœæããŠãã ããã
ã³ã³ããªãã¥ãŒã·ã§ã³ã®æé ïŒ
- ãªããžããªããã©ãŒã¯ããŸãã
- æ©èœè¿œå ãŸãã¯ãã°ä¿®æ£çšã®æ°ãããã©ã³ããäœæããŸãã
- 倿Žãã³ããããããã«ãªã¯ãšã¹ããéä¿¡ããŸãã
- ã³ã³ããªãã¥ãŒã·ã§ã³ã«æè¬ããŸãïŒ ð
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã