📬📅 MCP电子邮件日历服务器
准备生产的MCP服务器,统一 邮件 和 日历 在一个单一的上下文意识的接口LLM。建立使用 FastMCP 2.0 用于开发MCP应用程序的标准框架。
⚡ 将LLM连接到真实的工作流:阅读电子邮件,在日历中创建事件-所有这些都通过Model Context Protocol进行。
______________________________________________________________________
✨ 机会
- 📧 使用电子邮件\
向多个收件人发送电子邮件(to, cc, bcc)\ –接收、搜索和筛选电子邮件(按发件人、日期、阅读状态)
- 📅 日历和任务(CalDAV)\
3、任务和事件(VTODO)\ –查看过期、当前或即将发生的事件\ –通过完全异步支持 aiocaldav
- 🔐 “盒子里”的安全\
没有开放的外部依赖
- 🧩 面向MCP的体系结构\
–工具(Tools)、资源(Resources)和Prompts(Prompts)\ 动态URI模板(events://today)\ –支持通过LLM上下文请求 ctx.sample()
- 📦 模块化和可扩展结构\
–清晰分离:模块 email 和 calendar\ –轻松添加联系人、文件或自定义逻辑
______________________________________________________________________
🎯 使用所有的水垢 cloud.ru
1.快速启动服务 工件注册表
- 创建注册表
- 将Docker映像下载到存储库
2.快速启动服务 AI代理
- 从Artifact Registry创建MSR服务器
- 创建代理
🚀 快速启动(本地)
1.通过安装 uv (建议)
uv sync --no-editable2.env设置
Почта(IMAP/SMTP)
emailu address=youru mail@yandex.ru \ email_password=您的应用程序密码 \ SMTP_HOST=SMTP.yandex.ru \ SMTP_PORT=465 \ IMAP_HOST=IMAP.yandex.ru \ IMAP_PORT=993
CalDAV(Nextcloud、iCloud、FastMailидр)
卡尔达乌尔=https://caldav.yandex.ru \ caldavu username=youru mail@yandex.ru \ caldav_password=您的密码 \ caldav_calendar_name=日历名称
⚠️ 创建文件 应用程序密码 电子邮件提供商 Yandex日历
安全
mcpu apiu key=您的安全密钥
💡 永远不要向Git提交.env!
3.启动服务器
CLI模式(STDIO)-非常适合本地LLM工具
fastmcp run main.pyHTTP/SSE模式-用于Web客户端或远程访问
uv run smain.py服务器自动检测传输时,通过 fastmcp run🔌 使用示例
任何符合MCP的客户端:
from fastmcp import Client
async with Client("http://localhost:8000/mcp") as client:
# Отправить письмо
await client.call_tool("email_send_email", {
"to": [{"email": "friend@example.com"}],
"subject": "Привет от MCP!",
"body": "Это письмо отправлено через Model Context Protocol."
})
# Получить события на сегодня
events = await client.read_resource("calendar://today")核心资源
| 种类 | |
|---|---|
| calendar://today今天计划的活动 | |
| emails://unread最后五封未读的信 |
主要工具
- 电子邮件_发送_发送
- email_get.email
- 电子邮件搜索_发件人
- 日历创建事件
🧱 项目结构
src/
├── main.py # Точка входа
├── config.py # Загрузка и валидация .env
└── core/
├── email/ # Управление почтой
├── __init__.py # MCP сервер почты
├── utils.py # утилиты
├── prompts.py # промты
├── resources.py # ресурсы
└── tools.py # инструменты
└── calendar/ # Управление календарём
├── __init__.py # MCP сервер календаря
├── prompts.py # промты
├── resources.py # ресурсы
└── tools.py # инструменты
tests/
├── __init__.py
└── test_mcp_server.py # тесты МСР сервера