Skip to main content
Glama
Manjit73

spacemail-mcp

by Manjit73

spacemail-mcp

MCP-сервер, дающий Claude доступ к одному или нескольким почтовым ящикам Spacemail (бизнес-почта Spaceship).

Why it works this way

Публичный API Spaceship на docs.spaceship.dev покрывает домены, DNS и SellerHub. В нём нет конечных точек для почтовых ящиков, поэтому оборачивать для почты нечего. Spacemail, в свою очередь, предоставляет стандартные IMAP и SMTP, включённые по умолчанию, поэтому этот сервер обращается к ним напрямую:

Протокол

Хост

Порт

Шифрование

IMAP

mail.spacemail.com

993

SSL

SMTP

mail.spacemail.com

465

SSL

Имя пользователя — полный адрес Spacemail, пароль — это собственный пароль почтового ящика.

Related MCP server: email-mcp

Инструменты

Инструмент

Назначение

list_accounts

Какие почтовые ящики настроены и какой из них используется по умолчанию.

test_connection

Проверяет учётные данные. Один ящик или все сразу.

list_folders

Все папки с количеством сообщений и непрочитанных.

search_messages

Фильтр по отправителю, получателю, теме, телу, дате, статусу прочтения. Сначала новые.

read_message

Одно сообщение: заголовки, текстовое тело, список вложений.

set_read_state

Пометить прочитанным или непрочитанным.

move_message

Перемещение между папками, в том числе в Корзину.

save_draft

Составить и сохранить в «Черновики» без отправки.

send_message

Отправка через SMTP. Выключено, пока явно не включено для конкретной учётной записи.

Каждый инструмент принимает необязательный параметр account. Если настроен один ящик, он игнорируется. Если ящиков несколько, без него используется ящик по умолчанию. search_messages также принимает account: "*", чтобы искать сразу во всех почтовых ящиках одним вызовом.

Два намеренных упущения:

  • Нет безвозвратного удаления. Худшее, что может сделать любой инструмент, — переместить сообщение в Корзину, и это можно отменить, вернув его обратно.

  • Отправка включается отдельно для каждой учётной записи. send_message откажет, если для этого конкретного ящика не задано allowSend: true. Не включайте его и используйте save_draft, чтобы отправку нажимал человек.

Настройка

1. Установка

Требуется Node.js 18 или более новая версия.

cd path/to/spacemail-mcp
npm install

2. Создание accounts.json

Скопируйте accounts.example.json в accounts.json и заполните его. Этот файл находится в .gitignore.

{
  "accounts": [
    {
      "label": "personal",
      "user": "you@example.com",
      "password": "the-mailbox-password",
      "default": true,
      "fromName": "Your Name"
    },
    {
      "label": "work",
      "user": "hello@example.org",
      "password": "the-other-password"
    }
  ]
}

Поля для каждой учётной записи: label (как вы называете этот ящик в чате), user, password и, опционально, ---default, fromName, allowSend, imapHost, imapPort, smtpHost, smtpPort.

Метки должны быть уникальными. Если не задать label, она будет создана из адреса, поэтому два ящика на разных доменах с одинаковой локальной частью (info@a.com и info@b.com) оба станут info, и сервер откажется запускаться. Дайте им явные метки.

Пароли берутся в Spacemail Manager: найдите подписку, нажмите на три точки рядом с почтовым ящиком, выберите IMAP/POP3/SMTP. Если пароль у вас больше нет, сбросьте его там.

3. Подключение к настольному приложению Claude

Нажмите «Настройки», затем «Разработчик», затем «Изменить конфигурацию» — откроется файл %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "spacemail": {
      "command": "node",
      "args": ["C:\\path\\to\\spacemail-mcp\\index.js"],
      "env": {
        "SPACEMAIL_CONFIG": "C:\\path\\to\\spacemail-mcp\\accounts.json"
      }
    }
  }
}

Обратные слэши в JSON должны задваиваться. После этого полностью перезапустите приложение из системного трея.

Или через CLI Claude Code:

claude mcp add --transport stdio spacemail ^
  --env SPACEMAIL_CONFIG="C:\path\to\spacemail-mcp\accounts.json" ^
  -- node "C:\path\to\spacemail-mcp\index.js"

4. Проверка

Попросите Claude запустить test_connection без аргумента account. Он видит протестирует каждый почтовый ящик и независимо сообщит об успехе или ошибке, так что один неверный пароль не скроет остальные.

Другие способы передачи учётных данных

Проверяются в следующем порядке. Используется первый найденный.

1. Конфигурационный файл (рекомендуется для двух и более почтовых ящиков)

SPACEMAIL_CONFIG указывает на JSON-файл, описанный выше.

2. Пронумерованные переменные окружения

SPACEMAIL_1_USER, SPACEMAIL_1_PASSWORD, SPACEMAIL_1_LABEL, SPACEMAIL_1_DEFAULT, SPACEMAIL_1_ALLOW_SEND, SPACEMAIL_1_FROM_NAME, затем SPACEMAIL_2_* и так далее, до 20.

3. Отдельная учётная запись

SPACEMAIL_USER и SPACEMAIL_PASSWORD, плюс опциональные SPACEMAIL_IMAP_HOST, SPACEMAIL_IMAP_PORT, SPACEMAIL_SMTP_HOST, SPACEMAIL_SMTP_PORT, SPACEMAIL_ALLOW_SEND, SPACEMAIL_FROM_NAME.

Устранение неполадок

Сервер не запускается. Он завершает работу с конкретным сообщением в stdout: нечитаемый конфигурационный файл, отсутствующий пароль, дублирующая метка или отсутствие настроенных ящиков вообще. Запустите node index.js в папке напрямую, чтобы увидеть это сообщение.

Один ящик не работает — остальные работают. Запустите test_connection без аргументов. Каждая учётная запись сообщается отдельно. Обычная причина — имя пользователя, которое не является полным адресом электронной почты, или отключённый IMAP для этого ящика в Spacemail Manager.

Сервер отображается в Claude как отключённый. Подграммы MCP запускаются в окружении, отличном от вашего терминала, поэтому node может не быть в PATH. Используйте абсолютный путь к node.exe, который вы получите от команды where.

search_messages ничего не находит. Путик папкам чувствительны к регистру и различаются. Сначала запустите list_folders и используйте точное значение path, которое он возвращает.

Отправка отклоняется. Для allowSend должно быть true для конкретной учётной записи. Spacemail также ограничивает объём исходящей почты в рамках тарифа.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables Claude to interact with email accounts via IMAP and SMTP, providing tools for searching, reading, sending, and managing emails across multiple providers.
    40
    707 npm
    112
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to read, search, draft, send, flag, and move email across multiple IMAP/SMTP mailboxes while keeping credentials local.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude Code to manage email inboxes via IMAP, including reading, categorizing, phishing detection, archiving, junking, and sending emails with user permission.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to read, search, send, and manage email across multiple IMAP/SMTP accounts through OAuth 2.1-secured MCP tools.
    MIT