MCP Server for the Microsoft Graph Api

MCP Server for the Microsoft Graph Api

site icon
2025.04.15 0
C#Microsoft Graph API 集成AI 增强访问多国家云支持开发效率
mcp-server-graph-api 是一个基于 Microsoft Graph API 的模型-上下文-协议(MCP)服务器,使用 C# 编写。它允许用户通过 AI 客户端(如 Claude Desktop 应用或 GitHub Copilot)与 Microsoft Graph API 进行交互,查询租户信息。
View on GitHub

Overview

基本能力

产品定位

mcp-server-graph-api 是一个连接 AI 客户端与 Microsoft Graph API 的中间件,旨在通过 AI 增强对 Microsoft Graph API 的访问和查询能力。

核心功能

  1. Microsoft Graph API 集成:支持通过 Entra ID 应用程序权限访问 Microsoft Graph API。
  2. 多国家云支持:可配置为访问全球、美国政府(L4 和 L5)、中国和德国的 Microsoft Graph 服务。
  3. MCP 协议支持:与支持 MCP 协议的客户端(如 Claude Desktop 应用)集成。
  4. 自动化发现与运行:MCP 服务器可被客户端自动发现并运行。

适用场景

  1. 开发效率提升:通过 AI 客户端快速查询 Microsoft Graph API,无需手动编写查询代码。
  2. 租户管理:查询和管理 Microsoft 租户中的用户信息和其他资源。
  3. 多国家云访问:需要访问不同国家或地区的 Microsoft Graph 服务的场景。

工具列表

  1. Claude Desktop 应用:作为 MCP 客户端,用于与 MCP 服务器交互。
  2. GitHub Copilot:如果支持本地 MCP 服务器,也可作为客户端使用。

常见问题解答

  1. 如何配置 Entra ID 应用程序?
  2. 注册一个新的 Entra ID 应用程序,并至少授予 User.Read.All 应用程序权限,创建客户端密钥。
  3. 如何更改 Microsoft Graph 服务区域?
  4. 通过修改 NATIONAL_CLOUD 环境变量,支持 Global、US_GOV、US_GOV_DOD、China 和 Germany。
  5. MCP 服务器无法被发现怎么办?
  6. 关闭并重新打开 Claude Desktop 应用,或检查 %APPDATA%\Claude\logs 中的日志。

使用教程

使用依赖

  1. Entra ID 应用程序
  2. 注册新应用程序并授予 User.Read.All 权限。
  3. 创建客户端密钥。
  4. Claude Desktop 应用
  5. 下载并安装 Claude Desktop app

安装教程

  1. 打开并构建解决方案。
  2. 配置 claude_desktop_config.json 文件(位于 %APPDATA%\Claude\): json { "mcpServers": { "graphApi": { "command": "dotnet", "args": [ "run", "--project", "path/to/folder/with/console_project", "--no-build" ], "env": { "TENANT_ID": "<tenant_id>", "CLIENT_ID": "<client_id>", "CLIENT_SECRET": "<client_secret>", "NATIONAL_CLOUD": "Global" } } } }

调试方式

  1. 打开 Claude Desktop 应用,MCP 服务器应自动发现并运行。
  2. 如果应用已打开,关闭并重新打开。
  3. 检查日志:%APPDATA%\Claude\logs

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。