
d365 agent mcpserver dotnet
.NET Core D365 MCP Server exposing Dynamics 365 tools. Uses .NET OData client.
Repository Info
About This Server
.NET Core D365 MCP Server exposing Dynamics 365 tools. Uses .NET OData client.
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Dynamics 365 AI Agent - D365 MCP Server (.NET) (d365-agent-mcpserver-dotnet)
This repository contains the source code for the .NET Core implementation of the Dynamics 365 Model Context Protocol (MCP) Server. This server is a key component of the D365 AI Agent system, responsible for exposing Dynamics 365 business logic and data operations as standardized MCP tools.
Overview
The d365-agent-mcpserver-dotnet acts as a dedicated gateway to Dynamics 365. It receives MCP tool execution requests from clients (primarily the d365-agent-orchestrator via the d365-agent-mcpclient-ts library) and translates them into operations against the D365 OData API.
Key Features & Responsibilities
- MCP Tool Implementation: Defines and implements a suite of MCP tools that encapsulate specific Dynamics 365 operations (e.g.,
getCustomerDetails,createSalesOrder,simulateInvoicePostToD365,getPurchaseOrderStatus). - D365 OData Interaction: Utilizes a generated, type-safe C# OData client (from the
d365-agent-odataclient-dotnetrepository) to perform all communications with the Dynamics 365 OData endpoints. - D365 Authentication: Manages secure authentication (typically Client Credentials flow) with Dynamics 365, retrieving necessary credentials from Azure Key Vault.
- Multi-Instance Support: Designed to handle requests targeting multiple Dynamics 365 instances or legal entities, based on parameters passed in the MCP tool calls.
- Standardized Interface: Exposes D365 capabilities via the Model Context Protocol, allowing any MCP-compliant client to discover and use its tools.
- Error Handling: Implements robust error handling for D365 operations and communicates errors back via standard MCP error responses.
- Containerization: Packaged as a Docker container for deployment to Azure services like Azure Container Apps (ACA) or Azure Kubernetes Service (AKS).
Technology Stack
- .NET Core / ASP.NET Core (for hosting the MCP server endpoint)
- C#
- D365 Agent C# MCP SDK (from
submodules/csharp-sdkor a corresponding NuGet package) - Generated D365 OData Client (from
d365-agent-odataclient-dotnet) - MSAL.NET (for Azure AD authentication)
Interaction Flow
- The
d365-agent-orchestrator(specifically a LangGraph agent or a CopilotKit action usingd365-agent-mcpclient-ts) sends an MCPCallToolrequest to this server. - The
d365-agent-mcpserver-dotnetreceives the request. - It identifies the requested MCP tool and validates parameters.
- The tool implementation logic uses the generated D365 OData client (
d365-agent-odataclient-dotnet) to perform the required operations against the Dynamics 365 OData API (e.g., querying data, creating/updating entities). - The result or any error from D365 is packaged into an
McpResponse. - The
McpResponseis sent back to thed365-agent-orchestrator.
Getting Started
(Details to be added - typically involves cloning, .NET SDK setup, configuration for D365 environment and Azure Key Vault, and running the server).
Refer to the implementation.md in this repository for a detailed development plan.
Contribution
(Details on contribution guidelines if applicable)
Quick Start
Clone the repository
git clone https://github.com/ntrtd/d365-agent-mcpserver-dotnetInstall dependencies
cd d365-agent-mcpserver-dotnet
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.