邮件MCP服务器

一个用于通过SMTP和IMAP与自定义电子邮件提供商交互的模型上下文协议(MCP)服务器实现,允许LLM列出文件夹、阅读邮件、草拟邮件和发送邮件。

  • by ConferInc
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ConferInc/Gmail-mcp-server

使用说明

电子邮件MCP服务器

一种模型上下文协议(MCP)服务器实现,用于通过SMTP和IMAP与自定义电子邮件提供商进行交互。此服务器允许LLM使用您自己的电子邮件基础架构列出文件夹、阅读电子邮件、起草电子邮件和发送电子邮件。

特性

  • 检查连接:验证SMTP和IMAP连接。
  • 列出文件夹:检索所有可用邮箱。
  • 列出电子邮件:使用过滤选项获取特定文件夹中电子邮件的元数据。
  • 阅读电子邮件:获取特定电子邮件的完整内容。
  • 电子邮件草稿:创建电子邮件并将其保存到“草稿”文件夹。
  • 发送电子邮件:通过SMTP发送电子邮件,并将副本保存到“已发送”文件夹。

快速启动

按照以下步骤设置电子邮件MCP服务器。

1.安装

  1. 克隆仓库:

    git clone <your-repo-url>
    cd "Custom email MCP"
    
  2. 创建并激活虚拟环境:

    • 视窗:
      python -m venv venv
      .\venv\Scripts\activate
      
    • macOS/Linux:
      python3 -m venv venv
      source venv/bin/activate
      
  3. 安装依赖项:

    pip install -r requirements.txt
    

2.配置

  1. 创建 .env 文件: 复制 .env.example 到 .env:

    cp .env.example .env
    # OR on Windows
    copy .env.example .env
    
  2. 更新 .env: 打开 .env 文件并填写您的电子邮件提供商详细信息(SMTP/IMAP设置和凭据)。

3.添加到MCP客户端(IDE/Claude桌面)

将以下配置添加到MCP设置文件中(例如。, claude_desktop_config.json 或IDE的MCP配置)。

重要:使用 绝对路径 到虚拟环境中的python可执行文件以及到 src/server.py 脚本。

{
  "mcpServers": {
    "custom-email": {
      "command": "C:/path/to/Custom email MCP/venv/Scripts/python",
      "args": [
        "C:/path/to/Custom email MCP/src/server.py"
      ],
      "env": {
        "PYTHONPATH": "C:/path/to/Custom email MCP"
      }
    }
  }
}

配置分解

以下是配置的每个部分的功能:

  • command:Python可执行文件的绝对路径 在您的虚拟环境中.

    • 为什么? 这确保了服务器在独立于系统Python的情况下,使用正确安装的依赖项(aioimaplib、aiosmtplib等)运行。
    • 如何找到它:在您的终端中,与 venv 已激活,运行:
      • Windows(PowerShell): (Get-Command python).Source
      • macOS/Linux: which python
  • args:传递给命令的参数列表。

    • 第一个论点是 绝对路径 到 src/server.py 文件。
    • 为什么? 这个命令告诉python要执行哪个脚本。
  • env -> PYTHONPATH:项目根目录的绝对路径。

    • 为什么? 这个命令告诉Python在哪里查找 src 模块。如果没有这个,您可能会看到“找不到模块:src”错误,因为脚本是在项目上下文之外运行的。