KotMail: read-only коннектор Яндекс Почты для ChatGPT
KotMail
Read-only MCP-коннектор Яндекс Почты для ChatGPT через OAuth и IMAP XOAUTH2, без отправки, удаления и изменения писем
Средний риск
Средний уровень ставим, когда инструмент запускает код, ходит в сеть или читает файлы проекта. Перед установкой посмотрите, что именно он делает.
Почему такой уровень
- Читает содержимое личной переписки, хотя ни один инструмент не может отправить, удалить или изменить письмо
- Токены доступа хранятся локально в зашифрованном хранилище на компьютере пользователя
Установка
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/kotmailОпределит агенты на машине, проверит риск и зафиксирует версию.
Другие способы установки
Собрано автоматически, проверьте перед установкой.
Выполните в терминале
claude mcp add --transport stdio --env 'CLIENT_ID=<ваш CLIENT_ID>' --env 'CLIENT_SECRET=<ваш CLIENT_SECRET>' --env 'RUNTIME_API_KEY=<ваш RUNTIME_API_KEY>' KotMail -- nodeИли добавьте в файл .mcp.json, в проекте
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.
Добавьте в файл ~/.cursor/mcp.json, для всех проектов
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Для одного проекта тот же блок кладут в .cursor/mcp.json.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.
Выполните в терминале
code --add-mcp '{"name":"KotMail","type":"stdio","command":"node","args":[],"env":{"CLIENT_ID":"<ваш CLIENT_ID>","CLIENT_SECRET":"<ваш CLIENT_SECRET>","RUNTIME_API_KEY":"<ваш RUNTIME_API_KEY>"}}'Или добавьте в файл .vscode/mcp.json, в проекте
{
"servers": {
"KotMail": {
"type": "stdio",
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа servers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Выполните в терминале
codex mcp add KotMail --env 'CLIENT_ID=<ваш CLIENT_ID>' --env 'CLIENT_SECRET=<ваш CLIENT_SECRET>' --env 'RUNTIME_API_KEY=<ваш RUNTIME_API_KEY>' -- nodeИли добавьте в файл ~/.codex/config.toml, для всех проектов
[mcp_servers.KotMail]
command = "node"
args = []
env = { CLIENT_ID = "<ваш CLIENT_ID>", CLIENT_SECRET = "<ваш CLIENT_SECRET>", RUNTIME_API_KEY = "<ваш RUNTIME_API_KEY>" }Если файл уже есть, допишите блок в конец.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Выполните в терминале
gemini mcp add -s user -e 'CLIENT_ID=<ваш CLIENT_ID>' -e 'CLIENT_SECRET=<ваш CLIENT_SECRET>' -e 'RUNTIME_API_KEY=<ваш RUNTIME_API_KEY>' KotMail nodeИли добавьте в файл ~/.gemini/settings.json, для всех проектов
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.config/devin/mcp_config.json, для всех проектов
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. В легаси Cascade конфиг MCP лежит в ~/.codeium/windsurf/mcp_config.json.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Бывший Windsurf.
Добавьте в файл cline_mcp_settings.json, для всех проектов
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Файл настроек открывается в Cline: вкладка MCP Servers, кнопка Configure MCP Servers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл .roo/mcp.json, в проекте
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Форк Roo Code, папки .roo те же.
Добавьте в файл opencode.json, в проекте
{
"mcp": {
"KotMail": {
"type": "local",
"command": [
"node"
],
"environment": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcp.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.config/zed/settings.json, для всех проектов
{
"context_servers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа context_servers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл .codeassistant/mcp.json, в проекте
{
"mcpServers": {
"KotMail": {
"command": "node",
"args": [],
"env": {
"CLIENT_ID": "<ваш CLIENT_ID>",
"CLIENT_SECRET": "<ваш CLIENT_SECRET>",
"RUNTIME_API_KEY": "<ваш RUNTIME_API_KEY>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
CLIENT_IDсекрет, обязательная- Yandex OAuth Client ID
CLIENT_SECRETсекрет, обязательная- Yandex OAuth Client Secret
RUNTIME_API_KEYсекрет, обязательная- OpenAI Secure MCP Tunnel runtime API key
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Установи зависимости npm install, выполни npm run bootstrap и npm run setup, зарегистрируй приложение Яндекса, открой локальную страницу и подтверди OAuth по одноразовому коду, затем запусти Start KotMail.cmd или npm run tunnel:setup для подключения к OpenAI Secure MCP Tunnel.
Другие способы из описания автора
npm install
npm run bootstrap
npm run check
npm testЛокальная подготовка, bootstrap создает .env.local с новым мастер-ключом.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
KotMail связывает ChatGPT с Яндекс Почтой по цепочке OpenAI Secure MCP Tunnel, MCP-сервер, Yandex OAuth и IMAP по XOAUTH2. Вход идет через device OAuth Яндекса с правами только mail:imap_ro и login:email, пароль Яндекса приложению не передается, а токены и данные ящика хранятся в локальном хранилище с шифрованием AES-256-GCM. Ящик INBOX всегда открывается командой EXAMINE в режиме только для чтения. Пять инструментов дают последние письма, поиск по отправителю, теме, тексту, дате и непрочитанности, метаданные и текст одного письма и список вложений без их скачивания. Идентификаторы писем непрозрачны и подписаны HMAC, текст письма ограничен 50000 символами и восемью текстовыми частями, а содержимое писем и заголовки сервер прямо описывает агенту как недоверенные данные. Отправки, удаления, перемещения и изменения флагов и папок в проекте нет.
Для кого. Для одного пользователя, который хочет дать ChatGPT просмотр своей Яндекс Почты строго на чтение, без риска что-то отправить или удалить.
Подходит, если
- Нужен просмотр и поиск писем в ChatGPT без установки собственного публичного HTTPS-сервера
- Важно, чтобы у коннектора не было ни одного инструмента записи, даже теоретически
- Устраивает разовая настройка для одного тестового ящика и одного оператора
Не подходит, если
- Нужна отправка или изменение писем: проект целенаправленно этого не делает
- Нужна постоянная многопользовательская эксплуатация: автор прямо называет это упрощенным одиночным spike
Пример запроса к агенту
Через KotMail покажи 10 непрочитанных писем за неделю, только отправитель, тема и датаОграничения
Проект версии 0.3, рассчитан на один тестовый ящик и одного оператора, а не на постоянную многопользовательскую эксплуатацию. Нужны Node.js 24 и Windows-скрипты для запуска туннеля, хотя основной код не завязан на платформу. Скачивание вложений намеренно не реализовано. Для внешнего HTTPS и публичной многопользовательской работы потребуется отдельная доработка с callback на стабильном домене.
Как отключить. Остановите процесс KotMail и туннеля, отзовите доступ приложения на странице авторизаций Яндекса.
MCP
- Транспорт
- stdio
- Авторизация
- OAuth
Проверка безопасности
- Читает содержимое личной переписки, хотя ни один инструмент не может отправить, удалить или изменить письмо
- Токены доступа хранятся локально в зашифрованном хранилище на компьютере пользователя
Коротко о README
README описывает цепочку ChatGPT, туннель OpenAI, MCP-сервер, Yandex OAuth и IMAP, таблицу пяти инструментов с лимитами, устройство поиска и пагинации, объяснение, почему не нужен публичный callback, и пошаговую локальную подготовку с bootstrap, setup и Secure MCP Tunnel через Start KotMail.cmd на Windows.
Частые вопросы
Может ли KotMail отправить письмо?
Нет, в проекте нет ни одного инструмента для отправки, удаления, перемещения или изменения писем.
Нужен ли пароль от Яндекс Почты?
Нет, вход идет через device OAuth Яндекса, пароль приложению не передается.
Похожие
Самостоятельно размещаемая база знаний с блочными ссылками и встроенным MCP-сервером для подключения AI-агентов к заметкам
CLI для всех API Google Workspace с выводом в JSON и набором скиллов для агентов: Drive, Gmail, Calendar, Sheets и другие
Локальный поиск по заметкам, документации и расшифровкам встреч в Markdown: ключевые слова, смысловой поиск и ранжирование, есть MCP
Менеджер задач для AI-разработки: разбирает PRD на задачи с зависимостями и ведет агента по ним через MCP или CLI