项目简介
protonmail-mcp 是一个 MCP (Model Context Protocol) 服务器,旨在为大型语言模型 (LLM) 客户端(如 Claude 和 Cline VSCode 扩展)提供邮件发送能力。它利用 Protonmail 的 SMTP 服务,允许用户通过 LLM 应用发送电子邮件。
主要功能点
- 邮件发送: 支持通过 Protonmail SMTP 服务发送邮件。
- 多 recipients: 可以向一个或多个收件人发送邮件。
- 抄送和密送: 支持添加抄送 (CC) 和密送 (BCC) 收件人。
- 内容格式: 支持纯文本和 HTML 格式的邮件正文。
- 错误处理: 提供全面的错误处理和日志记录,方便问题排查。
- 兼容性: 兼容 Claude Desktop App 和 Cline VSCode Extension 等 MCP 客户端。
安装步骤
-
克隆仓库
git clone https://github.com/amotivv/protonmail-mcp.git cd protonmail-mcp -
安装依赖并构建项目
npm install npm run build构建成功后,会在项目根目录下生成 'dist' 文件夹,服务器程序 'index.js' 位于 'dist' 文件夹中。
服务器配置
为了让 MCP 客户端(如 Claude 或 Cline)连接到 protonmail-mcp 服务器,您需要在客户端的 MCP 设置中添加服务器配置信息。以下是配置示例,以 JSON 格式提供:
{ "servers": [ { "server_name": "protonmail-mcp", "command": "node", "args": [ "dist/index.js" ], "env": { "PROTONMAIL_USERNAME": "<您的Protonmail邮箱地址>", "PROTONMAIL_PASSWORD": "<您的Protonmail SMTP 密码>", "PROTONMAIL_HOST": "smtp.protonmail.ch", // 默认 Protonmail SMTP 主机 "PROTONMAIL_PORT": "587", // 默认端口 (STARTTLS) "PROTONMAIL_SECURE": "false", // 默认安全连接设置 (STARTTLS) "DEBUG": "false" // 是否开启debug日志,默认为false } } ] }
配置参数说明:
- '"server_name"': 服务器名称,设置为 'protonmail-mcp'。
- '"command"': 启动服务器的命令,这里使用 'node' 运行 Node.js 程序。
- '"args"': 命令参数,指定服务器程序 'dist/index.js' 的路径。
- '"env"': 环境变量配置,请务必根据您的 Protonmail 账户信息和需求进行配置:
- '"PROTONMAIL_USERNAME"': 您的 Protonmail 邮箱地址。
- '"PROTONMAIL_PASSWORD"': 您的 Protonmail SMTP 密码 (不是您常用的 Protonmail 登录密码,请参考 Protonmail SMTP 文档 获取 SMTP 密码)。
- '"PROTONMAIL_HOST"': Protonmail SMTP 服务器主机名,默认为 'smtp.protonmail.ch'。
- '"PROTONMAIL_PORT"': SMTP 服务器端口,默认为 '587' (STARTTLS)。 如果使用 SSL/TLS,可以设置为 '465' 并将 '"PROTONMAIL_SECURE"' 设置为 '"true"'。
- '"PROTONMAIL_SECURE"': 是否使用安全连接。 '"false"' 对应端口 '587' (STARTTLS), '"true"' 对应端口 '465' (SSL/TLS)。
- '"DEBUG"': 是否开启 debug 日志。设置为 '"true"' 可以在控制台看到详细日志, '"false"' 则关闭。
请注意:
- MCP 客户端的配置文件路径通常位于用户目录下的特定位置,例如 Claude Desktop App 的配置文件路径为 '/Users/your-username/Library/Application Support/Claude/claude_desktop_config.json',Cline VSCode Extension 的配置文件路径为 '/Users/your-username/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json'。请根据您的 MCP 客户端类型查找正确的配置文件路径。
- 请务必正确配置 Protonmail SMTP 相关的环境变量,特别是 SMTP 密码,以确保邮件发送功能正常工作。
基本使用方法
配置完成后,您可以在支持 MCP 协议的 LLM 客户端中使用 'send_email' 工具发送邮件。使用方式通常是在 LLM 的 Prompt 中使用 '<use_mcp_tool>' 标签,指定 'server_name' 为 'protonmail-mcp', 'tool_name' 为 'send_email',并提供邮件参数,例如:
<use_mcp_tool> <server_name>protonmail-mcp</server_name> <tool_name>send_email</tool_name> <arguments> { "to": "[email protected]", "subject": "测试邮件", "body": "这是一封来自 MCP 服务器的测试邮件。", "cc": "[email protected]", "bcc": "[email protected]", "isHtml": false } </arguments> </use_mcp_tool>
LLM 客户端会将 '<use_mcp_tool>' 标签转换为 MCP 请求发送给 protonmail-mcp 服务器,服务器执行邮件发送操作后,会将结果返回给 LLM 客户端。
信息
分类
通信与社交