Skip to main content
Glama
darkroomdevs

protonmail-mcp

by darkroomdevs

@darkroomhq/protonmail-mcp

MCP-сервер, который предоставляет ИИ-ассистентам полный доступ к вашей учетной записи ProtonMail через Proton Bridge. Читайте, отправляйте, ищите и управляйте электронной почтой через любой MCP-совместимый клиент.

Требования

  • Proton Bridge, запущенный локально и с выполненным входом

  • Node.js 18+

Related MCP server: Proton Mail MCP Server

Установка

npm install -g @darkroomhq/protonmail-mcp

Или используйте без установки:

npx @darkroomhq/protonmail-mcp

Конфигурация

Добавьте в конфигурацию вашего MCP-клиента (например, claude_desktop_config.json):

{
  "mcpServers": {
    "protonmail": {
      "command": "protonmail-mcp",
      "env": {
        "PROTONMAIL_USERNAME": "your@protonmail.com",
        "PROTONMAIL_PASSWORD": "bridge-app-password"
      }
    }
  }
}

С помощью npx (глобальная установка не требуется):

{
  "mcpServers": {
    "protonmail": {
      "command": "npx",
      "args": ["-y", "@darkroomhq/protonmail-mcp"],
      "env": {
        "PROTONMAIL_USERNAME": "your@protonmail.com",
        "PROTONMAIL_PASSWORD": "bridge-app-password"
      }
    }
  }
}

Примечание: PROTONMAIL_PASSWORD — это пароль приложения Bridge, отображаемый в Proton Bridge, а не пароль вашей учетной записи ProtonMail.

Все переменные окружения

Переменная

Обязательно

По умолчанию

Описание

PROTONMAIL_USERNAME

Да

—

Ваш адрес электронной почты ProtonMail

PROTONMAIL_PASSWORD

Да

—

Пароль приложения Proton Bridge

SMTP_HOST

Нет

127.0.0.1

Хост SMTP Bridge

SMTP_PORT

Нет

1025

Порт SMTP Bridge

IMAP_HOST

Нет

127.0.0.1

Хост IMAP Bridge

IMAP_PORT

Нет

1143

Порт IMAP Bridge

DEBUG

Нет

false

Включить отладочное логирование

Инструменты

Инструмент

Описание

sendEmail

Отправка электронного письма с необязательными CC, BCC, HTML-телом, вложениями и приоритетом

replyEmail

Ответ на существующее письмо по UID

listFolders

Список всех почтовых ящиков и папок

listEmails

Список писем с пагинацией (по страницам или стабильному курсору через beforeUid)

readEmail

Чтение письма по UID (поддерживает headersOnly и maxBodyLength для эффективности)

searchEmails

Поиск по отправителю, теме, телу, диапазону дат, статусу прочтения/пометки (с курсорной пагинацией)

bulkAction

Массовое удаление, перемещение, пометка прочитанным/непрочитанным, установка/снятие флага по критериям или UID (по умолчанию в режиме пробного запуска)

markRead

Пометить письмо как прочитанное

markUnread

Пометить письмо как непрочитанное

flagEmail

Добавить звездочку/флаг к письму

unflagEmail

Удалить звездочку/флаг с письма

moveEmail

Переместить письмо в другую папку

deleteEmail

Переместить письмо в корзину

createFolder

Создать новую почтовую папку

deleteFolder

Удалить почтовую папку

renameFolder

Переименовать почтовую папку

createLabel

Создать новую почтовую метку

deleteLabel

Удалить почтовую метку

renameLabel

Переименовать почтовую метку

connectionStatus

Проверка работоспособности соединения SMTP и IMAP

Примеры запросов

Чтение и обобщение

  • "Обобщи мои непрочитанные письма за эту неделю."

  • "Прочитай последнее письмо от Элис и скажи мне, о чем она просит."

Поиск

  • "Найди все письма об отчете за 2 квартал за последние 30 дней."

  • "Найди все помеченные письма в папке 'Отправленные'."

Отправка и ответ

  • "Отправь письмо Бобу, сообщив ему, что встреча перенесена на четверг на 15:00."

  • "Ответь на последнее письмо от команды дизайнеров и попроси обновленные макеты."

Массовые операции

  • "Удали все письма от IGN в папке 'Входящие'."

  • "Пометь все непрочитанные рассылки как прочитанные."

  • "Перемести все письма от noreply@github.com в папку GitHub."

  • "Сколько у меня помеченных писем за последний месяц?" (использует пробный запуск)

Организация

  • "Перемести все рассылки из папки 'Входящие' в папку 'Рассылки'."

  • "Пометь флагом три самых последних письма от моего руководителя."

  • "Удали все письма в папке 'Спам'."

  • "Создай папку 'Чеки' и перемести туда все подтверждения покупок."

  • "Создай метку 'Срочно' для писем, требующих немедленного внимания."

  • "Переименуй папку 'Старые проекты' в 'Архив'."

Статус

  • "Проверь, подключен ли Proton Bridge."

Советы по производительности

  • Курсорная пагинация: Используйте beforeUid (возвращается как nextCursor) вместо page для стабильной пагинации, на которую не влияют новые письма, поступающие между запросами.

  • Только заголовки: Используйте headersOnly: true в readEmail, чтобы пропустить загрузку полного тела сообщения — полезно, когда вам нужны только метаданные.

  • Усечение тела: Используйте maxBodyLength в readEmail, чтобы ограничить размер тела (например, 2000 символов) и избежать получения больших ответов от писем с объемным контентом.

  • Массовые действия: Используйте bulkAction с criteria поиска вместо перебора отдельных писем. Это выполняет один IMAP SEARCH + одну массовую команду, независимо от того, сколько писем соответствует критериям.

  • Пробный запуск: bulkAction по умолчанию использует dryRun: true — просматривайте затронутые письма перед выполнением деструктивных операций.

Разработка

npm install
npm run build   # compile TypeScript
npm run dev     # watch mode

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to send, read, search, and organize emails via ProtonMail using Proton Bridge. Supports MCP-compatible clients like Claude and Cursor.
    18
    202 npm
    4
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to send, read, search, and organize email from Proton Mail accounts via SMTP and IMAP.
    85 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to send, read, search, and organize Proton Mail email via SMTP and IMAP through the Model Context Protocol.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to read, organize, and send Proton Mail through the local Proton Bridge, with careful gating for sending and attachment access.
    34
    1
    Apache 2.0