Token导航 LogoToken导航TokenDH.com
MCP Email Server logo
开发工具stdio官方级别未说明来源级核验

MCP Email Server

MCP Server

@smithery/cli

IMAP and SMTP via MCP Server

工具数

0

提示词数

0

GitHub Stars

235

资源数

0
邮件服务PythonClaude服务器配置Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ai-zerolab

提供方

ai-zerolab

最后核验

2026/5/18 04:56

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @smithery/cli install @ai-zerolab/mcp-email-server --client claude

详细介绍

mcp电子邮件服务器

![Release](https://img.shields.io/github/v/release/ai-zerolab/mcp-email-server) ![Build status](https://github.com/ai-zerolab/mcp-email-server/actions/workflows/main.yml?query=branch%3Amain) ![codecov](https://codecov.io/gh/ai-zerolab/mcp-email-server) ![Commit activity](https://img.shields.io/github/commit-activity/m/ai-zerolab/mcp-email-server) ![License](https://img.shields.io/github/license/ai-zerolab/mcp-email-server) ](https://smithery.ai/server/@ai-zerolab/mcp-email-server)

通过MCP服务器的IMAP和SMTP

  • Github仓库:
  • 文档

安装

手动安装

我们建议使用 紫外线 管理您的环境。

尝试 uvx mcp-email-server@latest ui 配置,并为mcp客户端使用以下配置:

{
  "mcpServers": {
    "zerolib-email": {
      "command": "uvx",
      "args": ["mcp-email-server@latest", "stdio"]
    }
  }
}

此软件包在PyPI上可用,因此您可以使用 pip install mcp-email-server

之后,使用ui配置您的电子邮件服务器: mcp-email-server ui

环境变量配置

您还可以使用环境变量配置电子邮件服务器,这对于Jenkins等CI/CD环境特别有用。zerolib电子邮件支持UI配置(通过TOML文件)和环境变量,环境变量优先。

{
  "mcpServers": {
    "zerolib-email": {
      "command": "uvx",
      "args": ["mcp-email-server@latest", "stdio"],
      "env": {
        "MCP_EMAIL_SERVER_ACCOUNT_NAME": "work",
        "MCP_EMAIL_SERVER_FULL_NAME": "John Doe",
        "MCP_EMAIL_SERVER_EMAIL_ADDRESS": "john@example.com",
        "MCP_EMAIL_SERVER_USER_NAME": "john@example.com",
        "MCP_EMAIL_SERVER_PASSWORD": "your_password",
        "MCP_EMAIL_SERVER_IMAP_HOST": "imap.gmail.com",
        "MCP_EMAIL_SERVER_IMAP_PORT": "993",
        "MCP_EMAIL_SERVER_SMTP_HOST": "smtp.gmail.com",
        "MCP_EMAIL_SERVER_SMTP_PORT": "465"
      }
    }
  }
}

可用环境变量

变量描述默认值必填
MCP_EMAIL_SERVER_ACCOUNT_NAME帐户标识符"default"没有
MCP_EMAIL_SERVER_FULL_NAME显示名称电子邮件前缀
MCP_EMAIL_SERVER_EMAIL_ADDRESS电子邮件地址-
MCP_EMAIL_SERVER_USER_NAME登录用户名与电子邮件相同
MCP_EMAIL_SERVER_PASSWORD电子邮件密码-
MCP_EMAIL_SERVER_IMAP_HOSTIMAP服务器主机-
MCP_EMAIL_SERVER_IMAP_PORTIMAP服务器端口993没有
MCP_EMAIL_SERVER_IMAP_SSL启用IMAP SSLtrue没有
MCP_EMAIL_SERVER_IMAP_VERIFY_SSL验证IMAP SSL证书(禁用自签名)true没有
MCP_EMAIL_SERVER_SMTP_HOSTSMTP服务器主机-
MCP_EMAIL_SERVER_SMTP_PORTSMTP服务器端口465没有
MCP_EMAIL_SERVER_SMTP_SSL启用SMTP SSLtrue没有
MCP_EMAIL_SERVER_SMTP_START_SSL启用STARTTLSfalse没有
MCP_EMAIL_SERVER_SMTP_VERIFY_SSL验证SSL证书(禁用自签名)true没有
MCP_EMAIL_SERVER_ENABLE_ATTACHMENT_DOWNLOAD启用附件下载false没有
MCP_EMAIL_SERVER_SAVE_TO_SENT将已发送的电子邮件保存到IMAP“已发送”文件夹true没有
MCP_EMAIL_SERVER_SENT_FOLDER_NAME自定义已发送文件夹名称(如果未设置,则自动检测)-

HTTP传输安全

HTTP传输(ssestreamable-http)验证请求 HostOrigin 标头,以防止DNS重新绑定攻击。默认情况下允许本地主机。对于Docker网络或反向代理,显式配置预期的服务名称。

变量描述默认值
MCP_HOSTHTTP绑定主机 streamable-httplocalhost
MCP_PORTHTTP绑定端口 streamable-http9557
MCP_ALLOWED_HOSTS允许逗号分隔 Host 价值观。支持 host:* 端口本地主机
MCP_ALLOWED_ORIGINS允许逗号分隔 Origin 价值观。支持 host:* 端口本地主机来源
MCP_ENABLE_DNS_REBINDING_PROTECTION启用DNS重新绑定保护true

Docker编写示例:

services:
  mcp-email-server:
    image: ghcr.io/ai-zerolab/mcp-email-server:latest
    command: ["streamable-http"]
    environment:
      MCP_HOST: 0.0.0.0
      MCP_PORT: 9557
      MCP_ALLOWED_HOSTS: mcp-email-server:*,localhost:*,127.0.0.1:*
      MCP_ALLOWED_ORIGINS: http://mcp-email-server:*,http://localhost:*,http://127.0.0.1:*

裸主机条目,如 MCP_ALLOWED_HOSTS=mcp-email-server 还允许该主机上的任何端口。 MCP_ENABLE_DNS_REBINDING_PROTECTION=false, MCP_ALLOWED_HOSTS=*,或 MCP_ALLOWED_ORIGINS=* 完全禁用主机和源验证。仅在孤立的本地开发环境中使用这些选项。

满配列表中的IPv6文字应使用括号表示法,例如 [::1]:*http://[::1]:*.

启用附件下载

默认情况下,出于安全原因,禁用下载电子邮件附件。要启用此功能,您可以:

选项1:环境变量

{
  "mcpServers": {
    "zerolib-email": {
      "command": "uvx",
      "args": ["mcp-email-server@latest", "stdio"],
      "env": {
        "MCP_EMAIL_SERVER_ENABLE_ATTACHMENT_DOWNLOAD": "true"
      }
    }
  }
}

选项2:TOML配置

添加 enable_attachment_download = true 到您的TOML配置文件(~/.config/zerolib/mcp_email_server/config.toml):

enable_attachment_download = true

[[emails]]
# ... your email configuration

启用后,您可以使用 download_attachment 将电子邮件附件保存到指定路径的工具。

将已发送的电子邮件保存到IMAP已发送文件夹

默认情况下,已发送的电子邮件会自动保存到您的IMAP“已发送”文件夹中。这可确保通过MCP服务器发送的电子邮件显示在您的电子邮件客户端(Thunderbird、webmail等)中。

服务器自动检测常见的已发送文件夹名称: Sent, INBOX.Sent, Sent Items, Sent Mail, [Gmail]/Sent Mail.

指定自定义“已发送”文件夹名称 (适用于文件夹名称不标准的提供商):

选项1:环境变量

{
  "mcpServers": {
    "zerolib-email": {
      "command": "uvx",
      "args": ["mcp-email-server@latest", "stdio"],
      "env": {
        "MCP_EMAIL_SERVER_SENT_FOLDER_NAME": "INBOX.Sent"
      }
    }
  }
}

选项2:TOML配置

[[emails]]
account_name = "work"
save_to_sent = true
sent_folder_name = "INBOX.Sent"
# ... rest of your email configuration

禁用保存到“已发送”文件夹,set MCP_EMAIL_SERVER_SAVE_TO_SENT=falsesave_to_sent = false 在您的TOML配置中。

自签名证书(例如ProtonMail桥)

如果您使用的是具有自签名证书的本地邮件服务器(如ProtonMail Bridge),则需要禁用SSL证书验证:

{
  "mcpServers": {
    "zerolib-email": {
      "command": "uvx",
      "args": ["mcp-email-server@latest", "stdio"],
      "env": {
        "MCP_EMAIL_SERVER_IMAP_VERIFY_SSL": "false",
        "MCP_EMAIL_SERVER_SMTP_VERIFY_SSL": "false"
      }
    }
  }
}

或者在TOML配置中:

[[emails]]
account_name = "protonmail"
# ... other settings ...

[emails.incoming]
verify_ssl = false

[emails.outgoing]
verify_ssl = false

对于单独的IMAP/SMTP凭据,您还可以使用:

  • MCP_EMAIL_SERVER_IMAP_USER_NAME / MCP_EMAIL_SERVER_IMAP_PASSWORD
  • MCP_EMAIL_SERVER_SMTP_USER_NAME / MCP_EMAIL_SERVER_SMTP_PASSWORD

然后你可以试试 克劳德桌面版。如果要将其与其他mcp客户端集成,请运行 $which mcp-email-server 对于路径,请在客户端中进行配置,如下所示:

{
  "mcpServers": {
    "zerolib-email": {
      "command": "{{ ENTRYPOINT }}",
      "args": ["stdio"]
    }
  }
}

如果 docker 是可用的,您可以尝试使用docker镜像,但您可能需要在客户端中使用 tools 通过 MCP。默认配置路径为 ~/.config/zerolib/mcp_email_server/config.toml

{
  "mcpServers": {
    "zerolib-email": {
      "command": "docker",
      "args": ["run", "-it", "ghcr.io/ai-zerolab/mcp-email-server:latest"]
    }
  }
}

通过Smithery安装

通过以下方式自动安装Claude Desktop的电子邮件服务器 铁匠铺:

npx -y @smithery/cli install @ai-zerolab/mcp-email-server --client claude

用法

回复电子邮件

要使用正确的线程回复电子邮件(使其出现在电子邮件客户端的同一对话中):

  1. 首先,获取原始电子邮件以获取其 message_id:
emails = await get_emails_content(account_name="work", email_ids=["123"])
original = emails.emails[0]
  1. 使用发送您的回复 in_reply_toreferences:
await send_email(
    account_name="work",
    recipients=[original.sender],
    subject=f"Re: {original.subject}",
    body="Thank you for your email...",
    in_reply_to=original.message_id,
    references=original.message_id,
)

in_reply_to 参数设置 In-Reply-To 标题,以及 references 设置 References 头球两者都被电子邮件客户端用来正确地进行对话。

发展

此项目使用以下方式管理 紫外线.

尝试 make install 安装虚拟环境并安装预提交挂钩。

使用 uv run mcp-email-server 为了地方发展。

发布新版本

  • 在上创建API令牌 PyPI.
  • 使用名称将API令牌添加到您的项目机密中 PYPI_TOKEN 通过访问 本页.
  • 创建一个 新版本 在Github上。
  • 在表单中创建新标记 *.*.*.

有关更多详细信息,请参阅 这里.

目录标签

目录标签

邮件服务PythonClaude服务器配置developer-tools本地部署IMAPSMTP电子邮件管理

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@smithery/cli

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP