Mail.ru MCP starter
Connects a Mail.ru mailbox over IMAP to list folders, search messages, read messages without marking them as read, move a selected message to an existing folder, and move a selected message to the trash. It does not send mail, empty the trash, or permanently delete messages.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Mail.ru MCP starter — почта в ChatGPT
Персональный MCP-сервер на Python: подключает один ящик Mail.ru к ChatGPT через Google OAuth и работает с почтой по IMAP. Развёртывается на собственном сервисе Render; у каждого пользователя — свои учётные данные и свой сервер.
Главный шаг: создайте специальный пароль для внешнего приложения Mail.ru. Обычный пароль от ящика не работает. Выберите «Полный доступ к Почте» и сохраните полученный пароль только в MAILRU_APP_PASSWORD в Environment своего сервиса. Официальная инструкция Mail.ru.
Что умеет
Команда | Действие |
| Папки и возможности IMAP-сервера |
| Поиск по отправителю, теме, дате и непрочитанным; до 30 заголовков |
| Чтение без отметки «прочитано» |
| Перемещение одного выбранного письма в существующую папку |
| Перемещение одного выбранного письма в системную корзину |
Отправки, очистки корзины и безвозвратного удаления нет. Для восстановления используйте mail_move из корзины обратно в нужную папку. При чтении используются EXAMINE/BODY.PEEK, при перемещении — UID MOVE; общий EXPUNGE не вызывается.
Related MCP server: IMAP MCP Connector
Как повторить
Сделайте Fork этого репозитория.
Разрешите IMAP и создайте пароль внешнего приложения в Mail.ru.
Разверните Python Web Service на Render Free из своего Fork.
Создайте Google OAuth Client типа Web application с callback вашего сервиса.
Заполните секреты и разрешённый Google-аккаунт в Render Environment.
В ChatGPT → Plugins → «+» → Add custom MCP server добавьте
https://YOUR-SERVICE.onrender.com/mcp, выберите OAuth/DCR и scopemail.access.Войдите через Google и подтвердите перечисленные операции. Проверьте поиск, чтение, перемещение в корзину и восстановление на специально подготовленном письме.
Пошаговая инструкция: docs/SETUP_RU.md. В ней есть точные переменные, команды, контрольные результаты и разбор ошибок.
Схема
flowchart TD
ChatGPT["ChatGPT"] -->|"OAuth + MCP / HTTPS"| Server["Ваш сервер на Render"]
Server -->|"IMAP / TLS :993"| Mail["Ваш ящик Mail.ru"]
Server <-->|"openid email: проверка владельца"| Google["Google OAuth"]Google используется для входа в MCP, а не для доступа к Gmail. Ящик Mail.ru может иметь другой адрес. Запросы чтения передают выбранные заголовки и тексты писем в ChatGPT; сервер обрабатывает их в памяти. Картинки и ссылки из писем не загружаются.
Права без сюрпризов
Все пять команд используют один scope mail.access. Страница согласия заранее перечисляет чтение, перемещение и удаление в корзину. Это собственный scope данного сервера, а не разрешение Google или Mail.ru. Автоматического повышения старых read-only токенов в публичном шаблоне нет.
Разрешён только подтверждённый Google email из ALLOWED_GOOGLE_EMAIL. Токены проверяются по подписи, issuer, audience, сроку и scope. Письма — недоверенные данные: их текст не является поручением пользователю или агенту. Подробнее: SECURITY.md.
Переменные
Имя | Где получить / назначение |
| Полный адрес своего ящика |
| Пароль внешнего приложения, не основной пароль |
| Случайный секрет от 32 символов; Blueprint генерирует его |
| Google OAuth Client вашего проекта |
| Секрет того же Google OAuth Client |
| Google email, которому вы разрешаете доступ |
| Необязательно: HTTPS origin своего домена/туннеля. На Render определяется автоматически |
| Необязательно: дополнительная фиксация Google subject |
Незаполненный пример: .env.example. Настоящие значения не добавляйте в Git, issue, скриншот или чат.
Тесты
python -m venv .venv
# Linux / macOS:
source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
python -m pip install -r requirements-dev.txt
python -m pytest tests -q
python scripts/check_public.pyВ публичной адаптации локально пройдены 47 тестов: авторизация, PKCE, callbacks, scope, UIDVALIDITY, IMAP-инъекции, MOVE, корзина и обрыв соединения. Тесты используют подмену IMAP и Google, не читают и не изменяют настоящий ящик. CI повторяет их при push/PR.
Что уже проверено и где границы
Исходная персональная интеграция проверена на реальном Mail.ru: поиск, чтение, перемещение выбранного письма в корзину с проверкой обеих папок. Этот публичный вариант очищен от персональных настроек и имеет другую, единую модель scope. Новое развёртывание из Fork требует собственной проверки по инструкции; 47 тестов не подменяют живую проверку Google/ChatGPT/Mail.ru.
Render Free засыпает после 15 минут простоя, пробуждение занимает около минуты. Данные на локальном диске сервиса не сохраняются. Здесь нет постоянной БД: незавершённую OAuth-сессию после перезапуска нужно начать заново. Это пример для одного владельца, не готовый многопользовательский почтовый сервис. Ограничения Render.
Файлы и лицензия
server.py — MCP и защита endpoint; mailbox_client.py — IMAP; oauth.py — персональный OAuth-сервер; render.yaml — Blueprint; docs/ — инструкция и разбор опыта; tests/ — проверки.
Сохранена выбранная владельцем лицензия репозитория MPL-2.0. Перенесённые и адаптированные файлы исходной реализации (server.py, oauth.py, mailbox_client.py, tests/, requirements.txt, render.yaml, .gitignore) сохраняют Apache-2.0; её текст — LICENSE-APACHE-2.0. Новые инструкции, примеры, CI и скрипт проверки относятся к MPL-2.0. Подробности — NOTICE. Независимый пример, не официальный продукт Mail.ru, Google, OpenAI или Render.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect any IMAP/SMTP mailbox to Claude & ChatGPT: search, read, sort, draft. Sends only with OK.
Your mailboxes in ChatGPT and Claude: Gmail, iCloud, Fastmail, any IMAP. Passwords stay yours.
Connect any mailbox to Claude, ChatGPT & AI: read, send, reply, schedule & search emails.
Email for AI agents: read, search and send from your Gmail, Outlook, Yahoo, iCloud or IMAP inbox.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceConnects an IMAP mailbox over OAuth 2.1 so an AI assistant can list and search accounts, folders, messages, attachments, and contacts. Mailboxes stay read-only by default, with optional opt-in write tools for flagging, moving, drafting, and approval-gated sending.MIT
- AlicenseNot gradedqualityBmaintenanceEnables Claude and ChatGPT to read, search, and organize mail in a user's own email account, including folders, threads, attachments, drafts, and optional sending, with per-user permission levels and OAuth-secured remote connections.MIT
- AlicenseAqualityCmaintenanceGives AI assistants IMAP/SMTP access to a mailbox so they can search folders, read and reply to messages, send email, and mark or move messages. Works with Namecheap Private Email by default and with other mailboxes via configurable hosts.760 npmMIT
- AlicenseNot gradedqualityBmaintenanceConnects a personal Mail.ru mailbox to ChatGPT through Google OAuth and IMAP, enabling users to list folders, search and read messages without marking them read, move selected messages between folders, and send them to Trash.Apache 2.0