Token导航 LogoToken导航TokenDH.com
Ms365 MCP logo
运维云端stdio官方级别未说明来源级核验

Ms365 MCP

MCP Server

一个基于Docker和Kubernetes部署的微软365模型上下文协议(MCP)服务器,通过Microsoft Graph API提供90多种微软365工具和服务的集成。

工具数

12

提示词数

0

GitHub Stars

1

资源数

0
Docker云端部署服务器管理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

lharillo

提供方

lharillo

最后核验

2026/5/17 20:20

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -d -p 3000:3000 lharillo/ms365-mcp:latest

详细介绍

ms365 mcp

](https://hub.docker.com/r/lharillo/ms365-mcp) ](https://github.com/lharillo/ms365-mcp) ![License: MIT](LICENSE)

Docker化部署 ms-365-mcp服务器 -用于通过Microsoft Graph API的Microsoft 365服务的模型上下文协议(MCP)服务器。

Docker 中心: lharillo/ms365-mcp

该项目提供了一个生产就绪的Docker镜像和Kubernetes清单,用于通过Streamable HTTP传输、OAuth 2.1身份验证和持久令牌缓存自托管MCP服务器。

特性

  • 90+工具 适用于Microsoft 365:Outlook、日历、OneDrive、Excel、OneNote、待办事项、联系人、搜索
  • 组织模式:团队、SharePoint、共享邮箱、用户管理
  • OAuth 2.1 使用PKCE(代码交换证明密钥)进行身份验证
  • 可流式传输的HTTP 3000港运输
  • 持久令牌缓存 --容器重启后幸存
  • Kubernetes就绪 具有部署、服务和PVC清单

快速开始

Docker运行

docker run -d -p 3000:3000 lharillo/ms365-mcp:latest

具有组织模式和持久令牌

docker run -d \
  -p 3000:3000 \
  -e MS365_MCP_ORG_MODE=true \
  -v ms365-data:/app/data \
  lharillo/ms365-mcp:latest

Docker Compose

docker compose up -d

看 对于完整配置。

Kubernetes部署

将清单应用于Kubernetes集群上的部署:

kubectl apply -f k8s/

这将创建:

  • 持久卷声明 --100Mi用于令牌缓存持久化
  • 部署 --具有健康检查和资源限制的单个副本
  • 服务 --端口3000上的群集IP

k8s/ 完整的清单。

通过Cloudflare隧道进行曝光

要在外部公开服务,请在您的 cloudflared 配置:

- hostname: ms365-mcp.example.com
  service: http://:3000
  originRequest:
    noTLSVerify: true
    http2Origin: true
    disableChunkedEncoding: true

然后创建DNS记录:

cloudflared tunnel route dns  ms365-mcp.example.com

环境变量

变量描述默认值
MS365_MCP_ORG_MODE启用组织模式(团队、SharePoint等)false
MS365_MCP_TOKEN_CACHE_PATHSTRATtoken缓存文件的路径/app/data/msal-cache.json
MS365_MCP_SELECTED_ACCOUNT_PATH所选帐户元数据的路径/app/data/selected-account.json
MS365_MCP_CLIENT_ID自定义Azure AD应用程序客户端ID内置
MS365_MCP_CLIENT_SECRETAzure AD客户端机密--
MS365_MCP_TENANT_IDAzure AD租户IDcommon
MS365_MCP_OAUTH_TOKEN预先存在的OAuth令牌(BYOT模式)--
MS365_MCP_CLOUD_TYPE云环境(globalchina)global
MS365_MCP_OUTPUT_FORMAT输出格式(toon 减少30-60%的代币)--
READ_ONLY禁用写入操作false
ENABLED_TOOLS用于筛选可用工具的正则表达式模式--
LOG_LEVEL日志记录级别info
SILENT禁用控制台输出false

API终点

方法路径描述
GET/健康检查--返回服务器状态
POST/mcpMCP协议端点(需要OAuth令牌)
GET/.well-known/oauth-authorization-serverOAuth 2.1服务器元数据
GET/authorizeOAuth授权流(重定向到Microsoft登录)
POST/tokenOAuth令牌交换

认证

服务器使用 OAuth 2.1与PKCE 用于身份验证。当MCP客户端连接时:

  1. 客户端在以下位置发现OAuth元数据 /.well-known/oauth-authorization-server
  2. 客户端在以下位置启动授权流 /authorize
  3. 用户被重定向到Microsoft登录
  4. 登录后,客户端在以下位置交换访问令牌的授权码 /token
  5. 客户端在后续操作中包含令牌 POST /mcp 请求:

令牌缓存在持久卷中 /app/data/,因此只有在令牌过期且无法刷新时才需要重新身份验证。

支持的范围

个人: Mail.Read, Mail.ReadWrite, Mail.Send, Calendars.ReadWrite, Files.ReadWrite, Notes.Read, Notes.Create, Tasks.ReadWrite, Contacts.ReadWrite, User.Read

组织 (与 --org-mode): Chat.Read, ChatMessage.Read, ChatMessage.Send, Team.ReadBasic.All, Channel.ReadBasic.All, ChannelMessage.Read.All, ChannelMessage.Send, Sites.Read.All, User.Read.All, Group.Read.All, Group.ReadWrite.All

MCP客户端配置

将您的MCP客户端指向服务器URL:

https://your-host/mcp

客户端必须支持OAuth 2.1和PKCE进行身份验证。

建筑

docker build -t lharillo/ms365-mcp:latest .
docker push lharillo/ms365-mcp:latest

许可证

麻省理工学院

链接

学分

目录标签

目录标签

Docker云端部署服务器管理Dockerfile本地部署微软365集成Docker部署Kubernetes支持OAuth2.1认证持久化令牌缓存

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP