邮件管理服务器

Proton Mail MCP Server 是一个通过 Proton Mail Bridge 提供邮件访问的服务,将邮件同步到本地 SQLite 数据库,支持 FTS5 全文搜索以实现快速离线访问。

  • by DreamC0der-AI
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 DreamC0der-AI/proton-mail-mcp

使用说明

Proton邮件MCP服务器

MCP服务器 克劳德代码 通过以下方式提供电子邮件访问 质子邮件桥。电子邮件通过FTS5全文搜索同步到本地SQLite数据库,以便快速离线访问。

特性

  • 13个MCP工具:列表、阅读、搜索、发送、回复、移动、标记、删除电子邮件+附件下载
  • 本地SQLite数据库:同步电子邮件标题一次,脱机工作。尸体一经要求就懒洋洋地搬来了
  • FTS5全文搜索:跨主题、发件人、收件人和正文搜索——13k多封电子邮件的即时结果
  • 增量同步:第一次同步约2-3分钟,后续同步以秒为单位
  • DB优先架构: list_emails, read_email, search_emails 同步时从本地数据库提供服务,否则IMAP回退

设置

先决条件

1.克隆和配置

git clone https://github.com/DreamC0der-AI/proton-mail-mcp.git
cd proton-mail-mcp

创建一个 .env 使用您的Proton Bridge凭据文件:

EMAIL_USER=your@pm.me
EMAIL_PASS=your-bridge-password
IMAP_HOST=127.0.0.1
IMAP_PORT=1143
SMTP_HOST=127.0.0.1
SMTP_PORT=1025

2.添加到克劳德代码

复制 example.mcp.json 到你的项目 .mcp.json 并更新路径:

{
  "mcpServers": {
    "email": {
      "type": "stdio",
      "command": "python3",
      "args": ["/absolute/path/to/proton-mail-mcp/server.py"]
    }
  }
}

3.同步电子邮件

重新启动Claude Code后,运行 sync_emails 将标头拉入本地数据库。然后使用 local_search 用于即时全文搜索。

工具

工具 说明
sync_emails 将IMAP邮件头同步到本地数据库(增量)
sync_status 显示每个邮箱的同步状态
local_search FTS5搜索: "exact phrase", word*, a AND b, a NOT b
list_emails 列出带有过滤器的电子邮件(同步时数据库优先)
read_email 通过UID读取完整电子邮件(延迟正文提取+缓存)
search_emails 搜索电子邮件(同步时为FTS5,IMAP回退)
send_email 通过SMTP发送电子邮件
reply_email 使用合适的螺纹头进行回复
mark_email 标记为已读/未读/标记/未标记
move_email 在邮箱之间移动
delete_email 移至垃圾箱
download_attachment 下载并跟踪附件
list_downloads 列出下载的附件
list_mailboxes 列出可用邮箱

建筑

server.py          MCP server (FastMCP, IMAP pool, SMTP, tool definitions)
db.py              EmailDB (SQLite + FTS5) + EmailSyncer (IMAP-to-DB sync)
.env               Credentials (gitignored)
data/              Local database + attachments (gitignored)
  emails.db        SQLite WAL database
  attachments/     Downloaded attachment files
tests/             Test suite

许可证

麻省理工学院