Mcp Dynamics365 Server

Mcp Dynamics365 Server

🚀 动态365 MCP服务器

动态365 MCP服务器 是一个基于Anthorpic的 Model Context Protocol(MCP) 实现的MCP服务器。它允许用户通过MCP协议与Microsoft Dynamics 365交互,提供诸如检索用户信息、账户、与指定账户关联的机会,以及从 Claude Desktop 创建和更新账户等功能。

Node.js TypeScript MCP License

🚀 快速开始

先决条件 🛠️

在开始之前,请确保以下几点:

  • 安装了最新版本的Node.js(推荐使用v16及以上)。
  • 安装了YarnNPM(用于包管理)。
  • 配置了一个有效的Dynamics 365实例,并具有必要的API访问权限。

配置步骤

1. 克隆仓库

使用以下命令克隆此仓库到本地:

git clone [your-repository-url]
cd dynamics-365-mcp-server

2. 安装依赖

运行以下命令安装所需的依赖项:

  • 如果您使用Yarn:
yarn install
  • 如果您使用NPM:
npm install

3. 配置环境变量

在项目根目录创建一个.env文件,并填写以下内容,确保所有字段与您的Dynamics 365实例匹配:

DYNAMICS_365_URL=https://your-dynamics-365-endpoint
CLIENT_ID=your-client-id
CLIENT_SECRET=your-client-secret
TENANT_ID=your-tenant-id

4. 编译TypeScript文件(可选)

如果您希望生成JavaScript文件,运行以下命令:

yarn build

或者

npm run build

5. 运行服务器

使用以下命令启动服务器:

yarn start

npm start

默认情况下,服务器将在http://localhost:3000上运行。

✨ 主要特性

该项目使用@modelcontextprotocol/sdk库来实现MCP服务器和工具,并集成Dynamics 365 API以进行数据操作。它提供了一系列工具,允许用户与Microsoft Dynamics 365进行交互,具体如下:

工具名称 描述 输入 输出
get-user-info 获取当前已认证用户的详细信息。 用户详情,包括姓名、用户ID和业务单位ID。
fetch-accounts 从Dynamics 365中获取所有账户。 账户列表的JSON格式输出。
get-associated-opportunities 获取指定账户关联的机会。 accountId(字符串,必需) 机会列表的JSON格式输出。
create-account 在Dynamics 365中创建新账户。 账户详细信息(如名称、联系人等) 创建的账户对象及其ID。
update-account 更新现有账户的信息。 账户ID和更新后的详细信息 更新后的账户对象及确认状态。

💡 可选步骤:Claude Desktop集成

要将此服务器与Claude Desktop集成,请按照以下步骤操作:

1. 安装Claude CLI

在终端中运行:

pip install claude-cli

2. 注册服务器

在Claude Desktop中,导航到“连接”菜单,并添加新的MCP服务器。配置所需的端点和其他参数。

🐛 调试

如果遇到问题,请检查以下事项:

  • 确保.env文件已正确配置。
  • 确保Azure AD应用程序具有访问Dynamics 365 API的必要权限。
  • 确保您的环境可以访问Dynamics 365实例。

您还可以在代码中添加调试日志以跟踪问题。例如:

console.error("调试:加载的环境变量:", process.env);

🤝 贡献

欢迎贡献!请随意提交pull request或打开问题报告任何错误或功能请求。 要进行贡献:

  • Fork此仓库。
  • 为您的功能或修复创建一个新的分支。
  • 提交更改并提交一个pull request。
  • 我们感谢您的贡献! 😊

📄 许可证

本项目采用MIT许可证。

  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-10-04 16:51

相似服务问题

相关AI产品