MS 365-21V MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MS 365-21V MCP Server列出我最近5封邮件的主题和发件人"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MS 365-21V MCP Server
让支持 MCP 的 AI 客户端,以你的身份使用世纪互联 Microsoft 365。
查询邮件、安排日程、检索 OneDrive 和 SharePoint,连接 Microsoft Graph 中国区;保留用户权限、操作确认和审计边界。
快速上手 · 完整部署 · 使用场景 · 工具目录 · English
一键接入(已有管理员部署)
管理员部署好服务并分配使用权限后,按对应客户端的方式添加 MCP 地址,再完成 OAuth 登录;不需要在客户端手动填写 client id / secret。
Claude Code:在项目根目录的 .mcp.json 中加入以下配置;已有 mcpServers 时合并其中的服务条目:
{
"mcpServers": {
"ms365-21v": {
"type": "http",
"url": "https://your-mcp-host.example.cn/mcp"
}
}
}把 url 换成管理员给你的地址,启动 Claude Code 后运行 /mcp,按提示登录。Claude Code 官方说明
Claude Desktop:在 Customize(自定义)→ Connectors(连接器)→ Add custom connector(添加自定义连接器) 中填写远程 MCP 地址,按提示连接并登录。不要把上面的 Claude Code JSON 直接放进 Desktop 的本地配置。远程连接由 Anthropic 云端发起,服务地址需允许其访问,不能填写你电脑的 localhost。Claude Desktop 官方说明
使用 WorkBuddy、Qoder Work、Codex 或 Dify?看客户端接入说明。自己从零部署?看快速上手。
非 Microsoft 或 21Vianet 官方产品。需要世纪互联租户和管理员授权,不适用于直接连接全球版 Microsoft 365 或个人 Outlook 账号。本文中的业务示例需要对应模块与权限,初始配置只开放个人资料查询。
Related MCP server: m365-reporting-mcp
先看它能帮你做什么
你对 AI 说 | 能力 | 启用条件 |
“获取我的个人资料,确认当前登录账号。” | 验证 OAuth → Graph 链路 | 快速上手的默认场景 |
“列出最近 5 封邮件,只显示主题和发件人。” | 邮件读取 | Mail 模块、 |
“检查明天的会议是否有时间冲突。” | 日程冲突分析 | Calendar + Smart 模块、对应权限与角色 |
“在我的 OneDrive 中查找项目计划。” | 文件检索 | OneDrive 模块、 |
“整理回复内容,发送前让我确认。” | 邮件写入与确认 | 额外写权限;保持 |
工具会返回数据供 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 应用、同意权限并分配角色的管理员。先按快速上手完成单应用配置,再运行:
git clone https://github.com/mdwsk88/ms-365-21v-mcp-server.git
cd ms-365-21v-mcp-server
npm run setup向导只询问 Tenant ID、API Client ID 和服务地址。它生成最小 .env,不会覆盖已有文件,也不会要求你把 client secret 放进命令行。编辑 .env 中的 MS_CLIENT_SECRET,使用 secret 的 Value,不是 Secret ID,然后运行:
npm run doctor
npm ci
npm run build
npm run start:http本机桌面客户端连接 http://localhost:3000/mcp。远程或云端客户端需要能够访问的 HTTPS 地址;云端客户端的 localhost 不是你的电脑。
成功标准: 在客户端完成登录,调用 auth_status,再成功执行 graph_get_me。健康检查通过或能看到工具,都不等于 Graph 权限已经配置成功。
初始配置保持 OAuth、App Roles、审计和操作确认开启,只加载个人资料模块。后续按需启用邮件、日历等功能,不用一次申请全部权限。逐步启用只读邮件
已有部署请先运行 npm run doctor,不要重新生成或覆盖 .env。Docker、双应用、反向代理和生产检查见完整部署说明。
使用已发布的 Docker 镜像
配置好 Entra 和 .env 后,可以直接使用镜像,无需在本机编译:
docker compose -f docker-compose.release.yml pull
docker compose -f docker-compose.release.yml up -d默认镜像为 ghcr.io/mdwsk88/ms-365-21v-mcp-server:v0.2.0,支持 Linux amd64 / arm64。使用旧版 Compose 文件时,在 .env 中设置 MCP_IMAGE_TAG=v0.2.0 后再执行上述命令;已有该设置时以你指定的版本为准。配置文件下载、首次启动和升级回退见 Docker 镜像说明,更新记录见 Releases。
配置错了,从哪里查?
npm run doctor
npm run --silent doctor -- --json离线检查会提示缺失或占位凭据、错误的云端点、地址覆盖、端口格式和单/双应用凭据不匹配等常见问题。它不打印配置值、不访问网络,也不修改 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 客户端/模型服务。上线前需审核客户端数据流、日志留存、模型供应商及组织合规要求。详见威胁模型和安全策略。
文档与参与
目标 | 入口 |
首次跑通、检查配置、逐步启用功能 | |
Docker、双应用、角色、生产部署 | |
实际使用方式与提示词 | |
工具及所需权限 | |
回调、设备策略与登录问题 | |
后续维护优先级与发布记录 |
项目解决了你的 21V 接入问题,欢迎点一个 Star,也欢迎提交脱敏的使用反馈或客户端兼容性记录。贡献前请阅读 CONTRIBUTING.md;安全漏洞不要公开提交 Issue。
License
Apache License 2.0。Microsoft、Microsoft 365、Microsoft Entra、Microsoft Graph 等名称属于各自商标权利人,参见 TRADEMARKS.md。
This server cannot be deployed
Maintenance
Related MCP Connectors
Permissioned access to Outlook, OneDrive and Teams via the user's own Microsoft account
Official Microsoft MCP Server to query Microsoft Entra data using natural language
Hosted multi-user MCP for Microsoft Exchange - on-premises, hybrid and Online, per-user rights
Let AI agents query data and act across all your business apps via MCP.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables MCP-enabled AI clients to access Microsoft 365 operated by 21Vianet (China) through Microsoft Graph, supporting email, calendar, OneDrive, SharePoint, Teams, contacts, search, and intelligent aggregation with delegated permissions and OAuth 2.1.16100Apache 2.0
- FlicenseBqualityBmaintenanceEnables MCP-compatible AI clients to securely read a user's Microsoft 365 data across Outlook, Calendar, Teams, meetings, OneNote, SharePoint, OneDrive, Loop, and Search, and to send Outlook email only after explicit user confirmation.103-
- FlicenseNot gradedqualityAmaintenanceEnables MCP-capable AI clients to access a user's 21Vianet Microsoft 365 mail, calendar, OneDrive, and SharePoint through Microsoft Graph China with delegated permissions, operation confirmation, and audit boundaries.-
- FlicenseNot gradedqualityAmaintenanceLets MCP-capable AI clients act as the signed-in user against 21Vianet-operated Microsoft 365 through the China Microsoft Graph endpoints, reading mail, analyzing calendar conflicts, and searching OneDrive and SharePoint files. Access stays bounded by the user's existing delegated permissions, with role filtering, write confirmation, and audited, redacted operations.-