Що таке Emailit MCP Server?
Emailit MCP Server — це сервер з відкритим вихідним кодом для Model Context Protocol, який підключає ШІ-асистентів безпосередньо до Emailit.
Він дозволяє надсилати електронні листи, керувати контактами, доменами, шаблонами та багато іншого через природну мову — прямо з Claude, Cursor або будь-якого MCP-сумісного клієнта.
- Пакет:
@emailit/emailit-mcp - Середовище виконання: Node.js 18+
- Ліцензія: MIT
- Репозиторій: github.com/emailit/emailit-mcp
Передумови
- Обліковий запис Emailit
- API ключ
- Верифікований домен для відправки
- Node.js 18 або новіша версія
Режими транспорту
Сервер підтримує два режими транспорту:
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 settings → Developer tab → 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_KEY | API ключ (обов’язковий для stdio) |
SENDER_EMAIL_ADDRESS | Відправник за замовчуванням з верифікованого домену |
REPLY_TO_EMAIL_ADDRESSES | Адреси для відповіді, розділені комами |
MCP_PORT | HTTP порт (за замовчуванням: 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 з її ім’ям як Sarah.”
{
"from": "hello@mydomain.com",
"to": "sarah@example.com",
"template": "welcome-email",
"variables": { "name": "Sarah" }
}
Запланувати лист
“Заплануй нагадування на 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 Smith (jane@example.com) до аудиторії aud_abc123.”
{
"email": "jane@example.com",
"first_name": "Jane",
"last_name": "Smith",
"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 ключ необхідний для stdio режиму”
Встановіть змінну середовища 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 репозиторій.