Dynamics 365 MCP服务器

Dynamics 365 MCP服务器是D365 AI代理系统的关键组件,负责将Dynamics 365的业务逻辑和数据操作暴露为标准的MCP工具。

  • by ntrtd
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 ntrtd/d365-agent-mcpserver-dotnet

使用说明

Dynamics 365 AI代理-D365 MCP服务器(.NET)(D365代理mcpserver)

此存储库包含的源代码。NET Core实现的Dynamics 365模型上下文协议(MCP)服务器。该服务器是D365 AI Agent系统的关键组件,负责将Dynamics 365业务逻辑和数据操作作为标准化的MCP工具公开。

概述

这 d365-agent-mcpserver-dotnet 充当Dynamics 365的专用网关。它接收来自客户端的MCP工具执行请求(主要是 d365-agent-orchestrator 通过 d365-agent-mcpclient-ts 库),并将它们转换为针对D365 OData API的操作。

主要特征和责任

  • MCP工具实施: 定义并实现了一套MCP工具,这些工具封装了特定的Dynamics 365操作(例如。, getCustomerDetails, createSalesOrder, simulateInvoicePostToD365, getPurchaseOrderStatus).
  • D365 OData交互: 使用生成的、类型安全的C#OData客户端(来自 d365-agent-odataclient-dotnet 存储库)以执行与Dynamics 365 OData端点的所有通信。
  • D365身份验证: 使用Dynamics 365管理安全身份验证(通常是客户端凭据流),从Azure密钥库检索必要的凭据。
  • 多实例支持: 设计用于根据MCP工具调用中传递的参数处理针对多个Dynamics 365实例或法律实体的请求。
  • 标准化接口: 通过模型上下文协议公开D365功能,允许任何符合MCP的客户端发现和使用其工具。
  • 错误处理: 对D365操作实施稳健的错误处理,并通过标准MCP错误响应将错误传达回来。
  • 集装箱化: 打包为Docker容器,用于部署到Azure服务,如Azure容器应用程序(ACA)或Azure Kubernetes服务(AKS)。

技术栈

  • .NET核心/ASP。NET核心 (用于托管MCP服务器端点)
  • C
  • D365代理C#MCP SDK (从 submodules/csharp-sdk 或相应的NuGet包)
  • 生成的D365 OData客户端 (从 d365-agent-odataclient-dotnet)
  • MSAL。网 (用于Azure AD身份验证)

交互流程

  1. 这 d365-agent-orchestrator (特别是LangGraph代理或CopilotKit操作,使用 d365-agent-mcpclient-ts)发送MCP CallTool 请求到此服务器。
  2. 这 d365-agent-mcpserver-dotnet 接收请求。
  3. 它识别所请求的MCP工具并验证参数。
  4. 工具实现逻辑使用生成的D365 OData客户端(d365-agent-odataclient-dotnet)以针对Dynamics 365 OData API执行所需的操作(例如,查询数据、创建/更新实体)。
  5. D365的结果或任何错误都被打包成 McpResponse.
  6. 这 McpResponse 被送回 d365-agent-orchestrator.

入门指南

(需要添加详细信息-通常涉及克隆、.NET SDK设置、D365环境和Azure密钥库的配置以及运行服务器)。 请参阅 implementation.md 在这个存储库中查看详细的开发计划。

贡献

(捐款指南的详细信息(如适用))