邮件管理服务

一个连接IMAP/SMTP邮件服务器的MCP服务,提供读取、搜索、发送、回复和删除邮件的功能。

  • by luhtfiimanal
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 luhtfiimanal/email-mcp

使用说明

电子邮件MCP

连接到任何IMAP/SMTP电子邮件服务器的MCP服务器(为Mailcow构建,可与其他服务器配合使用)。给予 克劳德代码 阅读、搜索、发送、回复和删除电子邮件的能力。

工具

工具 说明
email_folders 列出所有邮箱文件夹
email_list 在文件夹中列出最近的电子邮件
email_read 通过UID读取特定电子邮件
email_search 使用IMAP搜索条件搜索电子邮件
email_send 发送电子邮件(纯文本+HTML)
email_reply 通过UID回复电子邮件
email_delete 删除电子邮件(移至垃圾箱)

设置

1.克隆并安装依赖项

git clone https://github.com/luhtfiimanal/email-mcp.git
cd email-mcp
uv sync

2.配置凭据

复制并编辑 .env 文件:

cp .env.example .env
IMAP_HOST=mail.example.com
IMAP_PORT=993
SMTP_HOST=mail.example.com
SMTP_PORT=587
EMAIL_USER=you@example.com
EMAIL_PASSWORD=your-password

3.用克劳德代码注册

添加为全局MCP服务器(在所有项目中都可用):

claude mcp add --transport stdio email --scope user -- \
  uv run --directory /path/to/email-mcp python server.py

或者仅添加到特定项目:

claude mcp add --transport stdio email --scope project -- \
  uv run --directory /path/to/email-mcp python server.py

4.重新启动克劳德代码

这 email_* 工具现在应该可用了。验证 /mcp.

用法示例

注册后,您可以向Claude Code询问以下问题:

  • “检查我的收件箱”
  • “阅读来自的最新电子邮件john@example.com"
  • “搜索有关季度报告的电子邮件”
  • “发送电子邮件至alice@example.com关于明天的会议”
  • “回复该电子邮件并抄送鲍勃”
  • “删除该垃圾邮件”
  • “显示我发送的电子邮件”

搜索语法

这 email_search 该工具使用IMAP搜索条件:

FROM "sender@example.com"
SUBJECT "meeting"
SINCE "01-Jan-2025"
UNSEEN
OR FROM "alice" FROM "bob"
SUBJECT "report" SINCE "01-Dec-2024"

运作原理

  • 用途 imaplib 用于读取电子邮件(IMAP over SSL)
  • 用途 smtplib 用于发送电子邮件(带STARTTLS的SMTP)
  • 已发送的电子邮件会自动保存到“已发送”文件夹
  • 支持纯文本回退的HTML电子邮件
  • 通过以下方式作为stdio MCP服务器运行 Python MCP SDK

许可证

麻省理工学院