Email MCP Server
HTTP/SSE wrapper для nikolausm/imap-mcp-server, обеспечивающий удалённый доступ через Claude Web и другие HTTP-клиенты MCP.
Возможности
- 📧 Полноценная работа с почтой: чтение, поиск, отправка, ответ, пересылка
- 🔐 Безопасное хранение: AES-256 шифрование учётных данных
- 🌐 Удалённый доступ: HTTP/SSE транспорт для Claude Web
- 📱 15+ провайдеров: Gmail, Outlook, Yahoo, Yandex, Mail.ru и др.
- 🔄 Multi-account: Поддержка нескольких почтовых аккаунтов
Архитектура
┌─────────────────────────────────────────────────────┐
│ HTTP/SSE Wrapper │
│ (Python/aiohttp) │
├─────────────────────────────────────────────────────┤
│ │
│ HTTP/SSE ←→ STDIO Bridge ←→ imap-mcp-server │
│ │
└─────────────────────────────────────────────────────┘
Быстрый старт
Локально для Claude Desktop
# Клонировать репозиторий
git clone https://github.com/nikolausm/imap-mcp-server.git
cd imap-mcp-server
# Установить и собрать
npm install
npm run build
# Настроить аккаунты через web wizard
npm run setup
Добавить в ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"imap-email": {
"command": "node",
"args": ["/path/to/imap-mcp-server/dist/index.js"]
}
}
}
Удалённый сервер (Docker)
# Собрать и запустить
docker-compose up -d
# Проверить здоровье
curl http://localhost:3008/health
Через Gateway (Claude Web)
URL для Custom Connector:
https://mcp.svsfinpro.ru/email/sse
API Endpoints
| Endpoint | Метод | Описание |
|---|---|---|
/ | GET | Информация о сервере |
/health | GET | Health check |
/sse | GET | SSE endpoint для установления соединения |
/mcp | POST | Streamable HTTP endpoint |
/messages | POST | Legacy SSE messages endpoint |
MCP Инструменты
Управление аккаунтами
imap_add_account- Добавить почтовый аккаунтimap_list_accounts- Список аккаунтовimap_remove_account- Удалить аккаунтimap_connect- Подключиться к аккаунтуimap_disconnect- Отключиться
Работа с письмами
imap_search_emails- Поиск писемimap_get_email- Получить письмоimap_get_latest_emails- Последние письмаimap_mark_as_read/imap_mark_as_unread- Пометить как прочитанноеimap_delete_email- Удалить письмо
Отправка писем
imap_send_email- Отправить письмоimap_reply_to_email- Ответить на письмоimap_forward_email- Переслать письмо
Папки
imap_list_folders- Список папокimap_folder_status- Статус папкиimap_get_unread_count- Количество непрочитанных
Настройка провайдеров
Gmail
- Включить 2FA
- Создать App Password: https://myaccount.google.com/apppasswords
- IMAP:
imap.gmail.com:993 - SMTP:
smtp.gmail.com:465
Yandex
- Создать пароль приложения
- IMAP:
imap.yandex.ru:993 - SMTP:
smtp.yandex.ru:465
Mail.ru
- IMAP:
imap.mail.ru:993 - SMTP:
smtp.mail.ru:465
Deployment
На сервер 217.199.253.8
./deploy.sh
Добавить в nginx gateway
Скопировать nginx-mcp-email.conf в конфигурацию сервера.
Безопасность
- ⚠️ НИКОГДА не используйте основной пароль - только App Passwords
- 🔐 Учётные данные шифруются AES-256
- 📁 Хранятся в Docker volume
email-mcp-accounts - 🔒 HTTPS через nginx gateway
Переменные окружения
| Переменная | Описание | По умолчанию |
|---|---|---|
HOST | Адрес сервера | 0.0.0.0 |
PORT | Порт | 8080 |
IMAP_SERVER_PATH | Путь к imap-mcp-server | /app/imap-mcp-server/dist/index.js |
LOG_LEVEL | Уровень логирования | INFO |
Troubleshooting
Контейнер не запускается
docker logs email-mcp-server
Проблемы с подключением к почте
- Проверьте App Password
- Убедитесь что IMAP включен в настройках почты
- Проверьте firewall
License
MIT
