MCP SMTP 邮件服务器
一种安全的、基于持有者认证的电子邮件工具。 这个项目展示了一个集成了MCP工具的简单FastAPI服务器,使其能够与OpenWebUI一起使用, Claude Desktop,或用于动态邮件生成的CLI(命令行界面)。
______________________________________________________________________
特点/功能
- FastAPI 服务器 使用承载令牌进行身份验证
- MCP工具支持 用于OpenWebUI集成
- /send_email 端点 用于动态邮件投递
- Swagger UI(/docs) 基于令牌的访问
______________________________________________________________________
文件
| 文件 | 用途 |
|---|---|
main.py 启动FastAPI应用,加载MCP工具,暴露路由 | |
mcp_email.py | 定义 send_email 工具逻辑 + 模式(或架构) |
config.py | 存储承载令牌和电子邮件凭据 |
______________________________________________________________________
要求
- Python 3.11及以上版本
- SMTP服务器访问(例如,Office365、Gmail、Mailjet)
- MCP环境: mcpo 翻译成中文是“海军陆战队司令(Marine Corps Commandant)”。不过,具体翻译可能会根据上下文或官方表述有所调整,但“海军陆战队司令”是较为通用的翻译
- 依赖项:
fastapi,pydantic,smtplib,email,uvicorn
______________________________________________________________________
设置
1. 克隆并安装
git clone https://github.com/yourname/365-sacu-email-server
cd 365-sacu-email-server
uv pip install -r requirements.txt2. 配置
编辑 config.py:
MCP_BEARER_TOKEN = "your-secret-token"
SMTP_SERVER = "smtp.office365.com" # i used office 365 for my SMTP, I know M$ Graph exists but that is besides the point. If it truly is better than SMTP let me know...
SMTP_PORT = 587
FROM_ADDRESS = "bot@sacu365.org"
SMTP_USERNAME = "bot@sacu365.org"
SMTP_PASSWORD = "your-email-password"3. 跑
uvicorn main:app --host 0.0.0.0 --port 8020______________________________________________________________________
终端(或终点)
POST(邮政服务) /send_email
{
"to": "you@domain.com",
"subject": "Test Email",
"body": "Hello from MCP Email Server"
}此工具使用您配置的SMTP设置发送电子邮件。
______________________________________________________________________
MCP集成
在OpenWebUI中注册此工具:
URL: http://:8020/openapi.json
Auth: Bearer 然后调用:
await send_email({"to": ..., "subject": ..., "body": ...})______________________________________________________________________
建筑
- 已注册的MCP工具
@mcp.tool() send_email函数从配置中读取凭据并通过(某种方式)发送smtplib- FastAPI 将其封装在一个带有令牌强制验证的安全路由中
- Swagger UI 自动生成用于 OpenWebUI 的架构(或模式)
______________________________________________________________________
许可证
麻省理工学院(MIT)。可在您自己的基础设施或项目中自由使用。
