Что такое MCP-сервер Emailit?

MCP-сервер Emailit — это открытый сервер Model Context Protocol, который напрямую подключает ИИ-ассистентов к Emailit.

Он позволяет отправлять электронные письма, управлять контактами, доменами, шаблонами и многим другим с помощью естественного языка — прямо из Claude, Cursor или любого совместимого с MCP клиента.

  • Пакет: @emailit/emailit-mcp
  • Среда выполнения: Node.js 18+
  • Лицензия: MIT
  • Репозиторий: github.com/emailit/emailit-mcp

Требования

Режимы транспорта

Сервер поддерживает два режима транспорта:

Stdio (по умолчанию)

MCP-клиент запускает сервер как подпроцесс и взаимодействует через стандартные потоки ввода/вывода. API-ключ передаётся через переменную окружения или аргумент командной строки. Это самый простой вариант, который работает со всеми основными клиентами.

HTTP (Streamable HTTP)

Для удалённых или веб-интеграций сервер работает как HTTP-сервер с использованием Streamable HTTP транспорта. Клиенты аутентифицируются для каждой сессии, передавая API-ключ как Bearer-токен в заголовке Authorization. Эндпоинт доступен по адресу /mcp.

Установка и настройка

Claude Code (Stdio)

claude mcp add emailit \
  -e EMAILIT_API_KEY=ваш_api_ключ \
  -- npx -y @emailit/emailit-mcp

Claude Code (HTTP)

Сначала запустите сервер:

npx -y @emailit/emailit-mcp --http --port 3000

Затем зарегистрируйте его:

claude mcp add emailit \
  --transport http http://127.0.0.1:3000/mcp \
  --header "Authorization: Bearer ваш_api_ключ"

Cursor (Stdio)

Откройте палитру команд и выберите Cursor Settings → MCP → Add new global MCP server, затем вставьте:

{
  "mcpServers": {
    "emailit": {
      "command": "npx",
      "args": ["-y", "@emailit/emailit-mcp"],
      "env": {
        "EMAILIT_API_KEY": "ваш_api_ключ"
      }
    }
  }
}

Cursor (HTTP)

Запустите сервер, затем добавьте:

{
  "mcpServers": {
    "emailit": {
      "url": "http://127.0.0.1:3000/mcp",
      "headers": {
        "Authorization": "Bearer ваш_api_ключ"
      }
    }
  }
}

Claude Desktop (Stdio)

Откройте настройки Claude Desktop → вкладка Developer → Edit Config, затем вставьте:

{
  "mcpServers": {
    "emailit": {
      "command": "npx",
      "args": ["-y", "@emailit/emailit-mcp"],
      "env": {
        "EMAILIT_API_KEY": "ваш_api_ключ"
      }
    }
  }
}

Параметры командной строки

ПараметрОписание
--key <ключ>API-ключ (только для stdio; HTTP использует Bearer-токен)
--sender <email>Отправитель по умолчанию с подтверждённого домена
--reply-to <email>Адрес для ответов по умолчанию (можно повторять)
--httpИспользовать HTTP-транспорт вместо stdio
--port <порт>HTTP-порт (по умолчанию: 3000)
-h, --helpПоказать справку

Переменные окружения

ПеременнаяОписание
EMAILIT_API_KEYAPI-ключ (обязательно для stdio)
SENDER_EMAIL_ADDRESSОтправитель по умолчанию с подтверждённого домена
REPLY_TO_EMAIL_ADDRESSESАдреса для ответов через запятую
MCP_PORTHTTP-порт (по умолчанию: 3000)

Совет: Если вы не укажете адрес отправителя, MCP-сервер будет запрашивать его каждый раз при отправке письма.

Доступные инструменты

Сервер предоставляет 47 инструментов в 8 категориях.

Письма (10 инструментов)

ИнструментОписание
send-emailОтправить письмо (HTML, текст, шаблоны, вложения, планирование)
list-emailsСписок писем с пагинацией и фильтрацией
get-emailПолучить письмо по ID
get-email-rawПолучить полное MIME-сообщение
get-email-bodyПолучить содержимое (текст и HTML)
get-email-attachmentsПолучить вложения в base64
get-email-metaПолучить метаданные письма
update-emailИзменить время отправки запланированного письма
cancel-emailОтменить запланированное или ожидающее письмо
retry-emailПовторить отправку неудачного письма

Домены (6 инструментов)

ИнструментОписание
create-domainСоздать домен и получить DNS-записи
get-domainПолучить информацию о домене и статус подтверждения
list-domainsСписок всех доменов
update-domainОбновить настройки отслеживания
delete-domainУдалить домен (необратимо)
verify-domainЗапустить проверку DNS

API-ключи (5 инструментов)

ИнструментОписание
create-api-keyСоздать новый API-ключ (показывается только один раз)
get-api-keyПолучить информацию об API-ключе
list-api-keysСписок всех API-ключей
update-api-keyОбновить название API-ключа
delete-api-keyУдалить API-ключ (необратимо)

Аудитории (5 инструментов)

ИнструментОписание
create-audienceСоздать аудиторию для кампаний
get-audienceПолучить детали аудитории
list-audiencesСписок всех аудиторий
update-audienceОбновить название аудитории
delete-audienceУдалить аудиторию и всех подписчиков

Контакты (5 инструментов)

ИнструментОписание
create-contactСоздать контакт с подписками на аудитории
get-contactПолучить контакт по ID или email
list-contactsСписок всех контактов
update-contactОбновить данные контакта
delete-contactУдалить контакт и записи подписчика

Шаблоны (6 инструментов)

ИнструментОписание
create-templateСоздать шаблон письма
get-templateПолучить шаблон по ID со всеми версиями
list-templatesСписок опубликованных шаблонов с фильтрацией
update-templateОбновить шаблон
delete-templateУдалить шаблон навсегда
publish-templateОпубликовать версию шаблона

Подавления (5 инструментов)

ИнструментОписание
create-suppressionДобавить email в список подавлений
get-suppressionПолучить подавление по ID или email
list-suppressionsСписок всех подавлений
update-suppressionОбновить подавление
delete-suppressionУдалить подавление

Вебхуки (5 инструментов)

ИнструментОписание
create-webhookСоздать вебхук с подписками на события
get-webhookПолучить информацию о вебхуке
list-webhooksСписок всех вебхуков
update-webhookОбновить вебхук
delete-webhookУдалить вебхук

Примеры использования

Отправить простое письмо

Попросите ИИ-ассистента:

“Отправь приветственное письмо на john@example.com с темой ‘Добро пожаловать!’”

ИИ вызовет send-email с параметрами:

{
  "from": "hello@mydomain.com",
  "to": "john@example.com",
  "subject": "Добро пожаловать!",
  "html": "<h1>Добро пожаловать!</h1><p>Спасибо за регистрацию.</p>"
}

Отправить с шаблоном и переменными

“Отправь шаблон welcome-email на sarah@example.com с именем Сара.”

{
  "from": "hello@mydomain.com",
  "to": "sarah@example.com",
  "template": "welcome-email",
  "variables": { "name": "Сара" }
}

Запланировать письмо

“Запланируй напоминание команде на team@company.com на завтра в 9 утра.”

{
  "from": "reminders@mydomain.com",
  "to": "team@company.com",
  "subject": "Напоминание о ежедневной планёрке",
  "text": "Не забудьте про планёрку в 9:30!",
  "scheduled_at": "завтра в 9 утра"
}

Отправить с вложениями

“Отправь письмо в бухгалтерию accounting@company.com с приложенным PDF счёта.”

{
  "from": "billing@mydomain.com",
  "to": "accounting@company.com",
  "subject": "Месячный счёт",
  "html": "<p>Счёт во вложении.</p>",
  "attachments": [
    {
      "filename": "invoice-2026-05.pdf",
      "url": "https://example.com/invoices/2026-05.pdf"
    }
  ]
}

Управление доменами

“Добавь мой домен mail.example.com и покажи DNS-записи.”

ИИ вызовет create-domain и покажет необходимые DNS-записи для настройки у вашего DNS-провайдера.

“Проверь мой домен.”

ИИ вызовет verify-domain для проверки распространения DNS и сообщит статус подтверждения.

Управление контактами

“Добавь Джейн Смит (jane@example.com) в аудиторию aud_abc123.”

{
  "email": "jane@example.com",
  "first_name": "Джейн",
  "last_name": "Смит",
  "audiences": ["aud_abc123"]
}

Управление шаблонами

“Создай шаблон рассылки с псевдонимом monthly-newsletter.”

{
  "name": "Месячная рассылка",
  "alias": "monthly-newsletter",
  "subject": "Обновления за {{month}}",
  "html": "<h1>Обновления за {{month}}</h1>..."
}

Управление подавлениями

“Подави bounced@example.com из-за слишком большого количества жёстких отказов.”

{
  "email": "bounced@example.com",
  "type": "bounce",
  "reason": "слишком много жёстких отказов"
}

Настройка вебхуков

“Создай вебхук, который отправляет события доставки и отказов на мой эндпоинт.”

{
  "name": "Отслеживание доставки",
  "url": "https://myapp.com/webhooks/email",
  "events": ["email.delivered", "email.bounced"]
}

Замечания по безопасности

  • API-ключи никогда не должны попадать в систему контроля версий.
  • В режиме stdio API-ключ хранится в конфигурации MCP-клиента.
  • В режиме HTTP клиенты передают API-ключ для каждой сессии через Bearer-токен.
  • URL вебхуков проверяются на SSRF перед созданием.
  • Операции удаления требуют подтверждения от ИИ.

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

“API key required for stdio mode” Установите переменную окружения EMAILIT_API_KEY или передайте --key.

Домен не подтверждён Настройте DNS-записи из вывода create-domain, затем вызовите verify-domain.

Письмо отклонено / не отправляется Убедитесь, что домен подтверждён и адрес отправителя использует этот домен.

Запланированное письмо нельзя отменить Должно остаться минимум 3 минуты до запланированного времени.

Повтор не удался Повторить можно только письма с жёсткой ошибкой, заблокированные или подавленные.

Локальная разработка

git clone https://github.com/emailit/emailit-mcp.git
cd emailit-mcp
npm install

# Запуск в режиме stdio
EMAILIT_API_KEY=ваш_ключ node src/index.js

# Запуск в режиме HTTP
node src/index.js --http --port 3000

Подробности см. в репозитории GitHub.

Локализовано с помощью ИИ