Fastmail JMAP

📧 零依赖邮件超能力,Agent 即装即用

为 AI Agent 赋予邮件超能力:通过 Fastmail JMAP API 实现零依赖的邮件收发、搜索与管理,适合自动化邮件处理场景。

收藏
5.2k
安装
1.1k
版本
1.2.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Fastmail-JMAP 是一个基于 Fastmail 现代 JMAP API 的邮件管理工具,让 AI Agent 能够直接操作用户邮箱。核心功能包括:收件箱浏览(inbox/unread)、全文搜索(search)、邮件阅读(read)、发送邮件(send)、移动归档(move/trash)及状态标记(mark-read/mark-unread)。

技术实现

  • 零依赖设计:纯 Python 3 标准库实现(仅使用 urllibjson),无需 pip install
  • 现代协议:采用 JMAP(JSON Meta Application Protocol)替代传统 IMAP/SMTP,基于 HTTP JSON 请求
  • 无状态架构:不维护本地数据库或同步状态,直接查询即走
  • 批量操作:支持单次 API 调用执行多个操作

显著优点

1. 极简部署:单文件 ~300 行代码,复制即用,无 OAuth 认证流程
2. Fastmail 生态优势:$5/月即可获得带自定义域名的邮箱 + 完善的 JMAP API,无 Gmail 式的复杂 OAuth 配置

3. Agent 原生设计:提供标准 CLI 接口和环境变量配置,易于集成到自动化工作流(cron/heartbeat)

4. 隐私优先:Fastmail 不扫描邮件内容、无广告

潜在缺点与局限性

  • 供应商锁定:仅支持 Fastmail,无法迁移至 Gmail/Outlook 等其他邮箱服务
  • 功能边界:JMAP 协议虽现代,但生态工具和第三方库远少于 IMAP
  • Token 管理:需手动申请和管理 API Token(fmu1- 开头),无自动刷新机制
  • 无本地缓存:每次操作均为实时 API 调用,大量查询可能触发速率限制
  • 安全责任:Token 拥有完整邮件读写权限,泄露风险较高

适合人群

  • 使用 Fastmail 的 solopreneur(个体创业者)和自动化爱好者
  • 需要为 AI Agent 添加邮件能力但不愿处理复杂 OAuth 流程的技术用户
  • 追求极简部署、偏好纯 Python 标准库方案的开发者

常规风险

1. Token 泄露FASTMAIL_TOKEN 若暴露在日志或环境变量中,可导致邮箱完全被控
2. 误操作风险:Agent 自动执行 sendtrashmove 可能造成邮件丢失或误发

3. 权限范围:需同时申请 "Email"(读写)和 "Email Submission"(发送)两个 scope,配置错误会导致 403

4. 日期时区:内部使用 UTC 时间,跨时区查询需注意转换

5. 无撤回机制:邮件一旦通过 JMAP 发送,无内置撤回功能

建议生产环境配合 1Password 等密码管理工具注入 Token,并为 Agent 设置发送前的显式确认流程。

Fastmail JMAP 内容

scripts文件夹
手动下载zip · 7.2 kB
fastmail.pytext/plain
请选择文件