
MS 365-21V MCP Server
io.github.mdwsk88v0.1.1更新於 Oct 9, 2026
MCP server for Microsoft 365 on the 21Vianet China cloud: mail, calendar, files via delegated Graph.
概覽
讓 AI 助理以登入使用者身分讀取與操作世紀互聯中國區 Microsoft 365 的郵件、行事曆、OneDrive 和 SharePoint 資料。
- 功能
- 透過委派權限把支援 MCP 的用戶端連接到世紀互聯中國區 Microsoft Graph,讓助理以目前登入使用者身分運作。文件列出的能力包括讀取郵件、分析行事曆衝突、檢索 OneDrive 和 SharePoint,以及在傳送前確認並整理回覆內容。也涵蓋 Teams、聯絡人、組織使用者、Microsoft Search 和智慧彙總,工具依模組、scope 與應用程式角色控管。初始設定只載入個人資料模組,其餘模組視需要啟用。
- 適用情境
- 適用於組織使用世紀互聯中國區 Microsoft 365,並希望 AI 用戶端以你的身分查詢郵件、行事曆或檔案,且不會取得你原本沒有的權限。不適用於全球版 Microsoft 365 或個人 Outlook 帳號。
- 執行需求
- 需要世紀互聯租用戶以及管理員同意與角色指派。可使用管理員提供的 HTTPS MCP 位址(Streamable HTTP 加 OAuth 2.1),或自行部署:需要 Node.js 22+、Git、Entra 應用程式註冊,並在 MS_CLIENT_SECRET 環境變數中設定用戶端密鑰。也提供已發佈的 Docker 映像。桌面用戶端可連接本機位址,遠端用戶端需要可存取的 HTTPS 位址。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 MS 365-21V MCP Server,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
MS 365-21V MCP Server
让支持 MCP 的 AI 客户端,以你的身份使用世纪互联 Microsoft 365。
查询邮件、安排日程、检索 OneDrive 和 SharePoint,连接 Microsoft Graph 中国区;保留用户权限、操作确认和审计边界。
[CI] [License: Apache-2.0] [Release]
快速上手 · 完整部署 · 使用场景 · 工具目录 · English
一键接入(已有管理员部署)
如果管理员已经部署好服务并给了你 MCP 地址,直接把下面这段贴进 Claude Desktop / Claude Code 的 MCP 配置,登录即用(Streamable HTTP + OAuth 2.1,不用手动填 client id / secret):
把 url 换成管理员给你的地址。自己从零部署?看快速上手。
非 Microsoft 或 21Vianet 官方产品。需要世纪互联租户和管理员授权,不适用于直接连接全球版 Microsoft 365 或个人 Outlook 账号。本文中的业务示例需要对应模块与权限,初始配置只开放个人资料查询。
先看它能帮你做什么
工具会返回数据供 AI 客户端使用,不会因为接入 MCP 而授予用户原本没有的数据权限。完整角色、scope 和工具映射见工具目录。
为什么专门做一个 21V 版本
- 中国区身份与数据端点:围绕 21V Entra 和 Microsoft Graph 中国区设计,而不是只替换全球版服务的域名。
- 客户端接入更统一:Streamable HTTP + OAuth bridge,通过一个 MCP 地址连接;服务端使用当前用户的 delegated permissions / OBO。
- 可控制的工具与写操作:App Roles、按模块与 scope 过滤、常用工具直达/长尾工具发现,以及确认与脱敏审计。
覆盖邮件、日历、OneDrive、SharePoint、Teams、联系人、组织用户、Microsoft Search 和智能聚合。代码中实现了工具,不等于你的租户已授权,也不等于每个全球云 API 都在 21V 可用。
快速开始
只使用别人已经部署好的服务?
不需要克隆仓库,也不需要自己创建 Entra 应用。向管理员获取 HTTPS MCP 地址及使用权限,在支持 Streamable HTTP 和 OAuth 的客户端添加它,然后登录。参见用户使用说明。
第一次部署?从“读取我的资料”开始
准备 Node.js 22+、Git,以及能配置 Entra 应用、同意权限并分配角色的管理员。先按快速上手完成单应用配置,再运行:
向导只询问 Tenant ID、API Client ID 和服务地址。它生成最小 .env,不会覆盖已有文件,也不会要求你把 client secret 放进命令行。编辑 .env 中的 MS_CLIENT_SECRET,使用 secret 的 Value,不是 Secret ID,然后运行:
本机桌面客户端连接 http://localhost:3000/mcp。远程或云端客户端需要能够访问的 HTTPS 地址;云端客户端的 localhost 不是你的电脑。
成功标准: 在客户端完成登录,调用 auth_status,再成功执行 graph_get_me。健康检查通过或能看到工具,都不等于 Graph 权限已经配置成功。
初始配置保持 OAuth、App Roles、审计和操作确认开启,只加载个人资料模块。后续按需启用邮件、日历等功能,不用一次申请全部权限。逐步启用只读邮件
已有部署请先运行 npm run doctor,不要重新生成或覆盖 .env。Docker、双应用、反向代理和生产检查见完整部署说明。
使用已发布的 Docker 镜像
配置好 Entra 和 .env 后,可以直接使用镜像,无需在本机编译:
默认镜像为 ghcr.io/mdwsk88/ms-365-21v-mcp-server:v0.1.0,支持 Linux amd64 / arm64。配置文件下载、首次启动和升级回退见 Docker 镜像说明,更新记录见 Releases。
配置错了,从哪里查?
离线检查会提示缺失或占位凭据、错误的云端点、地址覆盖、端口格式和单/双应用凭据不匹配等常见问题。它不打印配置值、不访问网络,也不修改 Entra。检查通过不代表管理员同意、Conditional Access 或真实 OAuth/Graph 调用已经验证。
客户端兼容性
仓库此前记录 WorkBuddy、Qoder Work、Codex 和 Dify 已完成远程连接、OAuth、工具发现与调用验证;这不是本次维护对这些客户端最新版的重新认证。详细记录保留在完整部署说明。
其他客户端需要支持 Streamable HTTP、OAuth 资源元数据/授权服务器发现、浏览器回调和 Bearer token。客户端能打开登录页面,也仍可能被租户 MFA、设备合规或用户分配策略拦截。
安全边界
远程服务使用 HTTPS;生产凭据放入 Secret Manager;只授予实际需要的 Graph delegated permissions 和 App Roles。不要为解决登录问题关闭认证或直接开放全部模块。
使用中国区 Graph 不自动保证端到端数据不出境:工具结果还会发送给你选择的 AI 客户端/模型服务。上线前需审核客户端数据流、日志留存、模型供应商及组织合规要求。详见威胁模型和安全策略。
文档与参与
项目解决了你的 21V 接入问题,欢迎点一个 Star,也欢迎提交脱敏的使用反馈或客户端兼容性记录。贡献前请阅读 CONTRIBUTING.md;安全漏洞不要公开提交 Issue。
License
Apache License 2.0。Microsoft、Microsoft 365、Microsoft Entra、Microsoft Graph 等名称属于各自商标权利人,参见 TRADEMARKS.md。
來源:README.md,提交 4528c68
工具
0版本歷史
1- v0.1.1最新Oct 9, 2026

