Microsoft 365 Graph Openclaw

🔷 Microsoft 365实时推送自动化中枢

通过Microsoft Graph API管理Outlook邮件、日历、OneDrive和联系人,支持Webhook推送模式降低LLM轮询成本,采用设备码OAuth认证。

收藏
4.1k
安装
1.2k
版本
0.2.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

本技能提供完整的Microsoft 365 Graph API集成方案,主要功能模块包括:

认证与授权:采用OAuth 2.0设备码流程,支持个人账号(consumers)和企业/学校账号(organizations)。默认使用公共Client ID便于快速测试,生产环境建议注册独立应用。Token自动刷新机制内置于utils.get_access_token(),状态持久化存储于state/graph_auth.json

邮件操作:支持收件箱列表筛选(未读、文件夹、数量限制)、单邮件获取(含正文解析、自动标记已读)、邮件移动、以及完整发信功能(HTML正文、抄送、附件、发件箱保存控制)。

日历管理:自定义时间窗口查询事件、创建会议(可选Teams在线会议)、事件更新与取消。注意个人Microsoft账户在Teams会议链接生成方面存在Graph API限制。

OneDrive文件操作:目录浏览、文件上传下载、移动管理、分享链接生成,支持本地化特殊文件夹别名解析。

联系人管理:列表查询、搜索过滤、创建更新删除全流程支持。

推送模式(核心亮点):区别于传统轮询,通过Webhook订阅机制实现邮件实时推送。包含完整基础设施:适配器服务器(Graph握手验证+clientState校验+队列入队)、订阅生命周期管理、异步工作进程(去重+OpenClaw唤醒信号)。提供EC2自动化部署脚本(Caddy反向代理+systemd服务+定时续订),以及端到端一键配置和冒烟测试。

显著优点

  • 成本优化:Webhook推送模式从根本上消除LLM对邮箱的周期性轮询,显著降低API调用成本和计算资源消耗
  • 实时性:邮件到达即触发,无轮询延迟
  • 安全设计:显式hook token认证、clientState验证、敏感信息环境变量隔离、git忽略的token存储
  • 基础设施完备:生产级的systemd服务化部署、自动TLS证书管理、订阅自动续期
  • 权限最小化:按场景细分的权限配置文件,默认scope已做合理限制
  • 审计追踪:结构化JSON日志记录所有操作

潜在缺点与局限性

  • 个人账户限制:Teams会议链接生成对consumer租户不完全支持
  • 部署复杂度:推送模式需要公网可访问的服务器、域名、HTTPS终端,非技术用户门槛较高
  • 权限范围较宽:默认scope包含读写权限,虽支持离线刷新但敏感操作需审慎
  • Python依赖:运行环境需预装requests等依赖
  • 令牌管理风险:尽管有.env保护建议,但本地JSON存储仍存在理论泄露面

适合人群

  • 需要构建邮件驱动自动化工作流的技术团队
  • 运行OpenClaw或类似LLM代理框架、希望降低Microsoft 365集成成本的用户
  • 具备Linux服务器运维能力、能独立配置域名和HTTPS的个人或组织
  • 对实时邮件响应有强需求的场景(如智能客服、自动分类、工单系统)

常规风险

  • 授权令牌泄露:graph_auth.json若被意外提交或权限配置错误,可导致账户被接管
  • Webhook端点暴露:公网可访问的/hooks路径若未正确配置token验证,可能遭受重放攻击或垃圾触发
  • 订阅管理失控:未及时清理的过期订阅可能导致通知丢失或资源浪费
  • 权限升级误操作:scope覆盖过广时,脚本权限超出最小必要原则
  • 基础设施依赖:Caddy/ systemd故障或证书过期将中断推送链路

Microsoft 365 Graph Openclaw 内容

docs文件夹
references文件夹
scripts文件夹
手动下载zip · 63.3 kB
app-registration.mdtext/markdown
请选择文件