Как за один вечер завести на своём домене почтовый ящик, с которым вместе работают команда и ИИ-агенты: Resend принимает письма, собирает цепочки и готовит черновики ответов, а отправку оставляет человеку.

📌
Проверено по официальной документации, блогу и странице цен Resend 28 октября 2026 года. Руководство собрано по документации, запуск на реальном домене не проводился. Цены и лимиты меняются, перед подключением сверьтесь со страницей цен.

Что это и кому подходит

Resend — почтовая платформа для разработчиков. Через REST API, SMTP или SDK приложение отправляет письма со своего домена: подтверждения регистрации, счета, уведомления. Сервис принимает входящие письма и с октября 2026 года хранит их в собственных ящиках Inboxes.

Inboxes Resend называет «ящиком для агентов» (анонс от 22 октября 2026 года). Это отдельный раздел Inboxes в дашборде и набор методов API: у каждого ящика свой адрес, папки, цепочки, метки, черновики, поиск и назначение писем на сотрудников. В ящике работает встроенный агент, а внешние агенты (Codex, Claude Code, Cursor, Claude, Gemini, Grok Bot, Hermes, OpenClaw) подключаются к тем же ящикам через MCP-сервер, плагины и навыки.

Руководство пригодится трём группам:

  • разработчикам, которым нужна отправка писем из приложения и приём ответов;
  • командам поддержки и продаж, которые хотят общий ящик с черновиками от ИИ;
  • тем, кто собирает своего агента и хочет дать ему отдельный почтовый адрес.
💡
MCP (Model Context Protocol) — протокол, через который ИИ-агент получает инструменты внешнего сервиса. Подробно он разобран в справочнике по MCP.

Что нового в октябре 2026 года

На конференции Resend Forward 21 октября 2026 года компания объявила несколько продуктов (обзор конференции). Для этого руководства важны такие изменения:

Что появилосьКогдаЧто это меняет
Inboxes22 октября 2026 годаЯщики на своём домене для людей и агентов, доступны всем пользователям
Встроенный агент Inboxes22 октября 2026 годаРазбирает новые письма по инструкции: метки, назначение, черновики ответов
Resend Forge23 октября 2026 годаСобственный почтовый сервер (MTA) Resend на принадлежащих компании IP-адресах, включается для домена одной CNAME-записью
Плагины для Codex, Cursor, Claude Code и коннектор для Claudeосень 2026 года, по журналу измененийОдна установка добавляет удалённый MCP-сервер и все навыки Resend
Resend for Nonprofits21 октября 2026 годаСкидка 50% на платные планы для некоммерческих организаций

В анонсе Inboxes упомянут настраиваемый интерфейс: встроенные агенты могут собирать для писем и цепочек свои представления, например канбан-доску. В документации от 28 октября 2026 года отдельного описания этой функции нет, поэтому в руководстве она не разбирается.

Как это работает

Письмо приходит на адрес ящика, например support@example.com. Resend сохраняет его, собирает переписку в цепочку и кладёт в папку inbox. Дальше возможны три пути, и их можно сочетать:

  1. Сотрудник открывает цепочку в дашборде и отвечает вручную.
  2. Встроенный агент читает письмо вместе с вашей инструкцией, ставит метки, назначает цепочку на сотрудника и сохраняет черновик ответа. Отправляет черновик человек.
  3. Ваш собственный агент получает событие по вебхуку или сам читает цепочки через MCP, API или CLI и действует по своему заданию.
ВозможностьЧто даётДокументация
ОтправкаREST API, SMTP relay, SDK для Node.js, Python, PHP, Ruby, Go, Rust, Java и .NET, отложенная и пакетная отправкаSend Email
ДоменыОтправка с вашего домена с DKIM, SPF и DMARC; для писем разного назначения удобны поддомены вроде updates.example.comDomains
Приём писемВходящие письма уходят вебхуком на ваш сервер, хранение остаётся за вашим кодомReceiving
InboxesResend хранит переписку: папки inbox, sent, archive, spam, trash, цепочки, метки, черновики, поиск, назначениеInboxes
Встроенный агентРазбирает новые письма по инструкции до 4000 знаковInbox Agent
ВебхукиСобытия по письмам и ящикам, например inbox.email.received и inbox.thread.assignedWebhooks
MCP, CLI, навыкиТе же операции из терминала и среды агентаMCP Server
ForgeДоставка через собственный MTA Resend без изменений в кодеАнонс Forge
⚖️
Приём писем и Inboxes решают разные задачи. При обычном приёме Resend передаёт письмо на ваш вебхук, и всё остальное делает ваш код. В Inboxes Resend сам хранит переписку и собирает её в цепочки, с которыми работают команда, приложение и агенты.

Что понадобится

  • Аккаунт Resend. Бесплатного плана хватит для трёх ящиков и проверки сценариев.
  • Собственный домен с доступом к DNS-записям. Адреса Gmail и других публичных сервисов для отправки не подходят.
  • Решение по MX-записям: либо домен принимает почту через Resend, либо существующий ящик пересылает письма на служебный адрес Resend.
  • API-ключ Resend.
  • Терминал с curl для проверки запросов.
  • Для своего агента: Codex, Claude Code, Cursor или другой клиент с поддержкой удалённых MCP-серверов.
  • Для своего кода: Node.js SDK resend версии 6.34.1 или новее, в более старых нет методов Inboxes.

Пошаговый запуск

Шаг 1. Подтвердите домен

Добавьте домен в разделе Domains и внесите показанные DNS-записи у своего регистратора. Дождитесь статуса Verified: без подтверждённых DKIM и SPF ящик создать нельзя.

Шаг 2. Включите приём писем

Если MX-записи домена свободны, включите на домене приём с MX-записью по инструкции Resend.

Если MX-записи уже указывают на Google Workspace, Microsoft 365 или другого провайдера и менять их нельзя, пропустите этот шаг. В шаге 5 вы создадите ящик с пересылкой.

⚠️
Смена MX-записей переносит приём всей почты домена. Если на домене уже работает корпоративная почта, используйте отдельный поддомен или пересылку.

Шаг 3. Создайте API-ключ

Создайте ключ на странице API Keys и сохраните его в переменной окружения:

export RESEND_API_KEY="<RESEND_API_KEY>"

Ключ с правом sending_access только отправляет письма, а в Inboxes отвечает, пересылает, создаёт и отправляет черновики. Его можно ограничить одним доменом. Для управления ящиками нужен ключ с полным доступом.

Шаг 4. Проверьте отправку

Отправьте тестовое письмо на адрес delivered@resend.dev. Он имитирует успешную доставку и не влияет на репутацию домена, но письмо расходует квоту.

curl -X POST 'https://api.resend.com/emails' \
     -H "Authorization: Bearer $RESEND_API_KEY" \
     -H 'Content-Type: application/json' \
     -d '{
  "from": "Acme <onboarding@resend.dev>",
  "to": ["delivered@resend.dev"],
  "subject": "hello world",
  "html": "<p>it works!</p>"
}'

Успешный ответ содержит идентификатор письма:

{
  "id": "<EMAIL_ID>"
}

Шаг 5. Создайте ящик

В дашборде откройте Inboxes, нажмите Create inbox, введите часть адреса до @ и выберите домен.

То же через API:

curl -X POST 'https://api.resend.com/inboxes' \
     -H "Authorization: Bearer $RESEND_API_KEY" \
     -H 'Content-Type: application/json' \
     -d '{
  "email_address": "support@example.com",
  "name": "Customer Support",
  "from_name": "Ada from Support"
}'

Или через CLI:

resend inboxes create \
  --email-address support@example.com \
  --name "Customer Support" \
  --from-name "Ada from Support"

Поле name видите только вы, from_name видят получатели. Сохраните ID ящика из ответа, он понадобится дальше.

Если вы пропустили шаг 2, добавьте в тело запроса "forwarding": true. Resend выдаст ящику служебный адрес receiving_address: его видно в ответе на запрос Retrieve inbox. Настройте пересылку существующего ящика на этот адрес у своего почтового провайдера.

Шаг 6. Создайте метки

Встроенный агент ставит только существующие метки и не создаёт новые. Заранее создайте в ящике метки, которые понадобятся в инструкции, например «Счета», «Возврат» и «Срочно» (Labels).

Шаг 7. Настройте встроенного агента

Откройте ящик, нажмите Settings и перейдите на вкладку Customize. Заполните три поля:

  • Instructions — как обращаться с письмами в этом ящике, до 4000 знаков;
  • Available actions — какие действия агенту разрешены;
  • Tone of voice — тон ответов, справа виден пример.

Изменения сохраняются автоматически. Агент начинает работать, когда у ящика есть инструкция и хотя бы одно разрешённое действие.

Действие в дашбордеЗначение в APIЧто делает агент
Draft repliesdraft_replyПишет черновик ответа
Forward threadsforward_threadПишет черновик пересылки
Add labelsadd_labelsСтавит существующие метки
Assign threads to teammatesassign_threadНазначает цепочку на сотрудника
Mark as spammark_as_spamПереносит цепочку в спам
ArchivearchiveПереносит цепочку в архив
Move to trashmove_to_trashПереносит цепочку в корзину

Тон задаётся одним из четырёх значений: concise_professional, concise_casual, expanded_professional, expanded_casual.

Та же настройка через API. Поля, которых нет в запросе, сохраняют прежние значения, а actions полностью заменяет список действий:

curl -X PATCH 'https://api.resend.com/inboxes/<INBOX_ID>/agent' \
     -H "Authorization: Bearer $RESEND_API_KEY" \
     -H 'Content-Type: application/json' \
     -d '{
  "instructions": "Label billing questions with Billing. Draft replies to order status questions.",
  "tone": "concise_professional",
  "actions": ["draft_reply", "add_labels"]
}'

Пример инструкции из документации, переведённый на русский:

В этот ящик приходят обращения в поддержку интернет-магазина.

- Письма о счетах и возвратах помечай меткой «Счета».
- Письма с угрозой судом помечай меткой «Срочно» и назначай на ada@example.com.
- На вопросы о статусе заказа готовь черновик ответа со ссылкой https://example.com/orders.
- Предложения о партнёрстве пересылай на partners@example.com.
- Рассылки и автоматические уведомления отправляй в архив.
📌
Встроенный агент никогда не отправляет письма сам. Ответы и пересылки он сохраняет черновиками с пометкой агента, отправляет их сотрудник.

Правила безопасности агента из документации:

  • если в цепочке уже есть черновик, агент его не трогает и новый не пишет;
  • пересылает только на адреса, полностью выписанные в инструкции, имени человека или домена недостаточно;
  • назначает цепочку только при однозначном совпадении имени или адреса сотрудника;
  • пропускает цепочки в папке спама и письма, которые не требуют действий.

Чтобы выключить агента, уберите все разрешённые действия или очистите инструкцию. Через API для этого отправьте пустой массив actions.

Шаг 8. Подключите своего агента

Resend держит удалённый MCP-сервер по адресу https://mcp.resend.com/mcp. Вход выполняется через OAuth в браузере. Инструменты Inboxes есть только на удалённом сервере, в локальном пакете resend-mcp их нет.

Выберите команду для своего клиента из документации MCP:

КлиентКак подключитьЧто ставится
Codexплагин Resend в один клик со страницы Codex или codex mcp add resend --url https://mcp.resend.com/mcpплагин ставит MCP и навыки, команда только MCP
Claude Codeclaude plugin install resend@claude-plugins-official, затем /mcp → resend → входMCP и навыки
Cursor/add-plugin resend в чатеMCP и навыки
Claude (веб и десктоп)коннектор Resend в каталоге коннекторов или Settings → Connectors → Add custom connectorконнектор ставит MCP и навыки
Hermeshermes plugins install resend/resend-skills --enableMCP и навыки
Gemini CLI, Zed, OpenCode, Warpадрес сервера в файле настроек клиентатолько MCP

Пример для Codex:

codex mcp add resend --url https://mcp.resend.com/mcp

Навыки без MCP ставятся отдельно. Команда предложит выбрать Resend Skill для отправки и Agent Email Inbox для приёма почты агентом:

npx skills add resend/resend-skills

На сервере, в CI или в другом месте без браузера передавайте API-ключ в заголовке вместо OAuth:

claude mcp add --transport http resend https://mcp.resend.com/mcp --header "Authorization: Bearer <RESEND_API_KEY>"

Шаг 9. При необходимости включите Resend Forge

Forge отправляет письма через собственный почтовый сервер Resend. По анонсу от 23 октября 2026 года, через него уже прошло больше 10 млн писем сотен клиентов, а менять код не нужно.

Откройте Domains, выберите домен, нажмите Activate Resend Forge и добавьте одну CNAME-запись, которую покажет дашборд. Домен подключается после проверки DNS и репутации отправителя, поэтому кнопка может быть доступна не для каждого домена.

💡
Для первого запуска Inboxes Forge не обязателен. Он влияет на доставку исходящих писем: скорость попадания во входящие, повторные попытки и видимость статусов.

Проверка результата

  1. Отправьте письмо на адрес ящика с любого почтового аккаунта. По документации оно появляется в папке Inbox новой цепочкой в течение нескольких секунд.
  2. Если агент включён, откройте цепочку и проверьте метку и черновик с пометкой агента.
  3. Нажмите Reply, отправьте ответ и убедитесь, что он остался в той же цепочке.
  4. Запросите цепочки через API:
curl -X GET 'https://api.resend.com/inboxes/<INBOX_ID>/threads' \
     -H "Authorization: Bearer $RESEND_API_KEY"

Или через CLI:

resend inboxes threads list --inbox-id <INBOX_ID>

Признак успеха: тестовая цепочка есть в ответе, у подходящего письма лежит черновик агента, а в папке sent нет писем, которые никто не отправлял вручную.

Полезные сценарии

Ящик поддержки с черновиками от агента

Задача: быстрее отвечать на письма в support@example.com и оставить отправку за сотрудником.

На входе: домен с включённым приёмом, созданный ящик и метки «Счета» и «Возврат».

Действия: в Customize опишите типы писем и ответ на каждый, разрешите только draft_reply и add_labels, выберите тон concise_professional. Отправьте в ящик тестовое письмо под одно из правил.

Результат: письмо появляется цепочкой с меткой, в окне ответа открывается черновик с пометкой агента. Сотрудник правит его и нажимает Send или удаляет.

Ограничение: в цепочке с черновиком агент новый не создаст. Для писем с юридическими и финансовыми последствиями разрешите агенту только метки и назначение.

Общий ящик команды с распределением писем

Задача: распределять входящие обращения между сотрудниками без ручной сортировки.

На входе: ящик, в команде Resend есть сотрудники, у которых будут цепочки.

Действия: в инструкции укажите для каждого типа писем адрес ответственного, например «вопросы об оплате назначай на billing@example.com». Разрешите assign_thread и add_labels. Для оповещения подпишитесь на событие вебхука inbox.thread.assigned.

Результат: новая цепочка получает метку и ответственного, сотрудник видит её у себя в дашборде, а ваша система получает событие о назначении.

Ограничение: если имя в инструкции совпадает с несколькими людьми или не совпадает ни с кем, цепочка останется без ответственного. Пишите полные адреса.

Свой агент в Codex или Claude Code разбирает почту

Задача: получить сводку новых писем и подготовить ответ, не выходя из среды агента.

На входе: подключён удалённый MCP-сервер Resend, в ящике есть цепочки.

Действия: дайте агенту ограниченное задание.

Промпт:

Используй Resend и ящик support@example.com.
Найди непрочитанные цепочки за сегодня и дай сводку: отправитель, тема, что просят.
Для письма клиента о счёте создай черновик ответа.
Ничего не отправляй, не пересылай и не удаляй.

Результат: в ответе агента есть сводка, а в дашборде у нужной цепочки появился черновик. Папка sent не изменилась.

Ограничение: правило «никогда не отправляет сам» относится только к встроенному агенту. Через MCP вашему агенту доступны ответы, пересылки и отправка черновиков, поэтому запрет на отправку задаётся в задании и проверяется по папке sent.

Отдельный адрес для личного агента

Задача: дать агенту адрес вроде agent@example.com, на который можно присылать задачи и согласования.

На входе: ящик для агента, навык Agent Email Inbox, сервер, принимающий вебхуки.

Действия: установите навыки командой npx skills add resend/resend-skills и выберите Agent Email Inbox. Попросите агента собрать обработчик события inbox.email.received по шаблону из документации навыка: проверка подписи вебхука, список разрешённых отправителей, чтение письма и ответ в той же цепочке.

Результат: письмо с разрешённого адреса запускает агента, и он отвечает в цепочку. Письма от остальных отправителей обработчик пропускает.

Ограничение: любой, кто знает адрес, может прислать письмо с командами для агента. Список разрешённых отправителей обязателен, а перед запуском стоит прочитать про prompt-инъекции.

Тарифы и лимиты

Данные со страницы цен на 28 октября 2026 года:

ПланЦенаПисьмаЧто важно
Free$0 в месяц3000 в месяцНе больше 100 писем в день, 3 домена, 3 ящика, 5 ИИ-кредитов
Proот $20 в месяцот 50 000 в месяцБез дневного лимита, 10 доменов, 5 вебхуков, 100 ИИ-кредитов
Scaleот $90 в месяцот 100 000 в месяц1000 доменов, 10 вебхуков, 500 ИИ-кредитов, выделенный IP за $30 в месяц
Enterpriseпо договорённостипо договорённостиУсловия по контракту
  • Три ящика входят в каждый план. На платных планах с оплатой по факту каждый следующий ящик стоит $1 в месяц. На Free больше трёх ящиков создать нельзя.
  • Отдельной квоты у ящиков нет: каждое отправленное и полученное через ящик письмо расходует квоту транзакционных писем.
  • Письма сверх квоты на платных планах стоят от $0,46 до $0,90 за тысячу.
  • ИИ-кредиты страница цен относит к генерации и редактированию писем. Тратит ли их встроенный агент Inboxes, на 28 октября 2026 года в документации не указано.

Частые проблемы

Что происходитПричинаЧто сделать
API отвечает 403 на любой запросНет заголовка User-AgentДобавьте заголовок; curl и SDK передают его сами
API отвечает 429Превышен лимит 10 запросов в секунду на командуДобавьте паузу и повтор запроса
409 при создании ящикаАдрес уже занятВыберите другой адрес
403 при создании ящикаИсчерпан лимит ящиков тарифаУдалите лишний ящик или включите оплату по факту на платном плане
422 при создании ящикаУ домена не подтверждены DKIM и SPF или не включён приёмЗавершите шаг 1 и шаг 2 или создайте ящик с "forwarding": true
Письма не доходят до ящикаMX-записи указывают на другого провайдераНастройте пересылку на receiving_address
Агент не ставит меткуМетки с таким названием нетСоздайте метку заранее
Агент не готовит черновикВ цепочке уже есть черновик или нет инструкции и действийОтправьте или удалите старый черновик, проверьте Customize
В клиенте MCP нет инструментов InboxesПодключён локальный resend-mcpПодключите удалённый сервер https://mcp.resend.com/mcp
В SDK нет методов inboxesСтарая версия пакетаОбновите resend до 6.34.1 или новее

Ограничения

  • Нужен собственный домен с доступом к DNS.
  • Если MX-записи менять нельзя, приём в ящик работает только через пересылку с существующего адреса.
  • Входящие письма расходуют ту же квоту, что и отправка. На Free месячная квота 3000 писем, дневной лимит отправки 100 писем.
  • Встроенный агент не создаёт метки и не отправляет письма. Если ответ должен уходить без участия человека, такой сценарий собирается через API или своего агента, и ответственность за отправку остаётся на вас.
  • Настраиваемые представления писем, описанные в анонсе Inboxes, на 28 октября 2026 года в документации не описаны.

Что дальше

Перед подключением рабочего ящика проверьте:

домен подтверждён, приём или пересылка настроены;
API-ключ хранится в переменной окружения и не попадает в код;
метки для агента созданы заранее;
агенту разрешены только нужные действия;
тестовое письмо прошло путь от входящих до черновика;
у своего агента есть список разрешённых отправителей и запрет на отправку без проверки.

Следующий шаг

Перед тем как дать агенту рабочий адрес, сравните варианты отдельной почты для агента в руководстве «Почтовые агенты: отдельный email в Google Workspace, Microsoft 365, Яндекс 360 и Cloudflare».

Если вы выбираете, какой ящик отдать агенту и какие действия ему разрешить, начните с одного адреса и режима черновиков.

Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov