mcpField
E
Email MCP Server

Email MCP Server

本地服务
github.com/egyptianego17通信协作2736 周前更新

关于 Email MCP Server

Email MCP Server 是一个让 AI 助手通过 SMTP 发送邮件和附件的 MCP 服务。适合需要在对话或自动化流程中发送邮件的开发者,支持通过环境变量或每次调用的参数配置 SMTP。

主要功能

  1. 01发送简单邮件,支持文本或 HTML 正文
  2. 02发送自定义邮件,支持抄送、密送和附件
  3. 03测试 SMTP 连接配置
  4. 04支持环境变量与单次调用参数两种配置方式

适用场景

  1. 01AI 助手在任务完成后自动发送通知邮件
  2. 02向客户发送带附件的报告
  3. 03发送前验证 SMTP 设置是否正确

MCP 相关

以 MCP 服务形式提供 send_simple_email、send_custom_email 和 test_smtp_connection 三个工具,支持 stdio 与 Streamable HTTP 两种传输方式。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Email MCP Server

一个 MCP(Model Context Protocol)服务,可让 AI 助手通过 SMTP 发送电子邮件。

功能

  • send_simple_email — 快速发送电子邮件(文本或 HTML);可选接受 smtp_config
  • send_custom_email — 完全自定义:抄送/密送、附件;可选接受 smtp_config
  • test_smtp_connection — 发送前验证 SMTP 设置;可选接受 smtp_config

快速开始

# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh

cd email-mcp-server
uv sync --extra dev

配置 SMTP(见下一节),然后运行:

# stdio transport (for MCP clients)
uv run python -m email_mcp_server.server

# Streamable HTTP transport (port 8000)
uv run python -m email_mcp_server.server --http

运行测试:

uv run pytest

SMTP 配置

你可以通过两种方式配置 SMTP 凭据——任选一种或同时使用。

选项 A:环境变量

复制示例并填写凭据:

cp env.example .env
# Required
SMTP_HOST=smtp.gmail.com
[email protected]
SMTP_PASS=your-app-password
[email protected]

# Optional (defaults shown)
# SMTP_PORT=587
# SMTP_SECURE=false

或者,通过客户端的 env 块传入(参见下方的客户端配置)。

选项 B:每次调用时传入载荷

在任何工具调用中直接传入 smtp_config——该次调用将忽略环境变量:

{
  "smtp_config": {
    "host": "smtp.gmail.com",
    "port": 587,
    "secure": false,
    "username": "[email protected]",
    "password": "your-app-password",
    "from_email": "[email protected]"
  }
}
字段类型描述
hoststringSMTP 服务器主机名
portintegerSMTP 服务器端口(通常为 587)
secureboolean使用 SSL/TLS(STARTTLS 时设为 false)
usernamestring身份验证用户名
passwordstring身份验证密码
from_emailstring发件人电子邮件地址

客户端配置

Claude Code
# stdio
claude mcp add email-server -- uv --directory /absolute/path/to/email-mcp-server run python -m email_mcp_server.server

# streamable HTTP (start the server first with --http)
claude mcp add --transport http email-server http://localhost:8000/mcp
基于 JSON 的客户端(Claude Desktop、Cursor、VS Code、Windsurf、Zed)

使用下面的通用示例,并根据你的客户端调整顶层键和配置文件路径:

{
  "<top-level-key>": {
    "email-server": {
      "command": "uv",
      "args": ["--directory", "/absolute/path/to/email-mcp-server", "run", "python", "-m", "email_mcp_server.server"],
      "env": {
        "SMTP_HOST": "smtp.gmail.com",
        "SMTP_PORT": "587",
        "SMTP_SECURE": "false",
        "SMTP_USER": "[email protected]",
        "SMTP_FROM": "[email protected]",
        "SMTP_PASS": "your-app-password"
      }
    }
  }
}
客户端配置文件路径顶层键备注
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonmcpServersWindows:%APPDATA%\Claude\...
Cursor~/.cursor/mcp.jsonmcpServers或 .cursor/mcp.json(项目级)
VS Code.vscode/mcp.jsonservers在服务器条目中添加 "type": "stdio"
Windsurf~/.codeium/windsurf/mcp_config.jsonmcpServers
Zed~/.config/zed/settings.jsoncontext_servers
Streamable HTTP(任意客户端)

使用 uv run python -m email_mcp_server.server --http 启动服务,然后:

客户端配置
Claude Codeclaude mcp add --transport http email-server http://localhost:8000/mcp
Claude Desktop{ "type": "http", "url": "http://localhost:8000/mcp" }
Cursor{ "url": "http://localhost:8000/mcp" }
VS Code{ "type": "http", "url": "http://localhost:8000/mcp" }
Windsurf{ "serverUrl": "http://localhost:8000/mcp" }
Zed{ "url": "http://localhost:8000/mcp" }

服务提供商设置

服务提供商主机备注
Gmailsmtp.gmail.com需要启用双重身份验证的应用专用密码
Outlooksmtp-mail.outlook.com普通密码或应用专用密码
Yahoosmtp.mail.yahoo.com需要启用双重身份验证的应用专用密码
iCloudsmtp.mail.me.com需要启用双重身份验证的应用专用密码

所有服务提供商均使用端口 587,并设置 SMTP_SECURE=false(STARTTLS)。

许可证

MIT 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。