ИИ и MCP
Переводить, писать и кратко излагать письма, подключать ИИ-клиенты к ящику, вызывать MCP-инструменты и спрашивать документацию.
Команды ИИ
| Команда | Что делает | Вход |
|---|---|---|
| ai translate | Перевести тему и тело, ничего не отправляя | Любой вид, с emails:send |
| ai languages | Показать все языки, которые принимает перевод | Любой или никакой: без входа выводит таблицу, встроенную в CLI |
| ai compose "<prompt>" | Написать тело письма в вашем стиле | Вход через браузер |
| ai summarize <thread-id> | Вывести сводку, которую OpenEmail хранит для цепочки | Вход через браузер |
translate и compose тратят по одному ИИ-действию из дневной квоты рабочего пространства, а исчерпанная квота завершается с кодом выхода 8. compose и summarize работают через MCP-инструменты composeEmail и getThreadSummary, поэтому им нужен вход через браузер: API-ключ не может достучаться до MCP-сервера.
Перевод
openemail ai translate --to de --subject "Your invoice" --text "The invoice is attached."openemail ai translate --to Japanese --body-file reply.html --no-originalcat notes.txt | openemail ai translate --to fropenemail ai languages --search portКоманда выполняет тот же перевод, что и отправка с переводом, и выводит результат, чтобы вы прочли его до того, как что-то уйдёт. Ничего не сохраняется и не отправляется. --to принимает код, английское название или собственное название языка. Тело берётся из --text, --html, --body-file или stdin, а --text и --html также читают файл через @path.
- Ваш исходный текст остаётся под переводом, если вы не передадите
--no-original. - Определённый исходный язык выводится в stderr, а
--jsonвыводит перевод целиком. - Чтобы переводить при отправке, используйте
openemail send --translate de.
Написать и изложить кратко
openemail ai compose "thank Ada for the invoice and ask for a PDF copy" --to [email protected]openemail ai compose "say yes to Tuesday at 3pm" --thread CAHk7pQ2x9LmZ4 --tone friendlyopenemail ai compose "decline politely" --thread CAHk7pQ2x9LmZ4 | openemail send --to [email protected] --subject "Re: Proposal"openemail ai summarize CAHk7pQ2x9LmZ4composeвыводит тело, написанное в вашем стиле, и ничего не отправляет, так что передайте его вopenemail send, когда оно вас устроит. С--threadона сначала читает последние письма цепочки и пишет ответ.--toneэто одно изformal,friendly,casual,concise,directилиwarm.summarizeвыводит сводку с темой, отправителем и датой. Сводки пишутся при получении почты, а у цепочки с зашифрованным письмом её нет, что завершается с кодом5.
Подключение ИИ-клиента
MCP-сервер OpenEmail даёт ИИ-клиенту те же инструменты, что у ассистента в приложении: читать и отправлять почту, управлять контактами, шаблонами, доменами и многим другим в пределах того, что вы одобрили. Клиент подключается одним из двух способов, и openemail mcp config выводит оба для вашего клиента:
- Удалённый сервер. Клиент выполняет собственный вход через браузер, вы одобряете его на странице согласия OpenEmail, и он появляется в разделе «Аккаунт → Подключённые приложения». Это более простой вариант, если клиент его поддерживает.
- Локальный мост,
openemail mcp serve, который клиент запускает черезnpx. Он использует вход этой CLI, поэтому сначала выполнитеopenemail login. Он подходит клиентам, которые запускают только локальные серверы.
openemail mcp configopenemail mcp config --client claude-codeopenemail mcp config --client cursor --profile workopenemail mcp config --client vscode --jsonclaude mcp add --transport http openemail https://api.openemail.uk/mcpclaude mcp add openemail -- npx -y @openemail/cli mcp serveПосле добавления удалённого сервера Claude Code входит через /mcp, а Codex через codex mcp login openemail. Claude Desktop добавляет его в Settings → Connectors → Add custom connector. openemail mcp config --client <name> также говорит, какой файл читает каждый клиент.
Локальный мост
openemail mcp serve читает JSON-RPC построчно из stdin, пересылает каждое сообщение на MCP-сервер с вашим сохранённым входом через браузер и пишет каждый ответ в stdout одной строкой. Он обновляет истёкший токен доступа незаметно для клиента, отвечает на пакет одним массивом и завершается, когда закрывается stdin. В stdout попадает только протокол, а stderr молчит, если не передать --debug.
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | openemail mcp serveopenemail mcp serve --profile workopenemail mcp serve --debug 2> mcp.logМост не может спросить код подтверждения через stdio. Инструмент, которому он нужен, доходит до клиента как отказ, а мост выводит одну подсказку в stderr. Запустите openemail verify в терминале с тем же профилем, и эти инструменты будут работать следующие 60 минут.
Вызов инструментов самому
openemail mcp toolsopenemail mcp tools composeEmailopenemail mcp call whoAmIopenemail mcp call listThreads --arg folder=inbox --arg maxResults=5openemail mcp call getThread --args '{"threadId":"CAHk7pQ2x9LmZ4"}'mcp toolsперечисляет инструменты, доступные этому входу, уже без тех, что не разрешают ваша роль или одобрение. Назовите инструмент, чтобы увидеть его описание и аргументы.mcp callпринимает аргументы одним JSON-объектом в--args(встроенно,@fileили-), а--arg key=valueзадаёт их по одному. Значение читается как JSON, если оно разбирается, поэтому берите в кавычки число, которое имеете в виду как текст.- MCP-сервер никогда не просит подтверждения, поэтому инструмент, который отправляет или удаляет, действует сразу.
- Результат, начинающийся с
Refused (, завершается с кодом4. Неизвестный инструмент завершается с5, неверные аргументы с7, а исчерпанная квота ИИ с8.
Шесть инструментов вносят изменение, которое REST API защищает кодом подтверждения, и спрашивают тот же код: createRule, setRuleEnabled, removeDomain, removeDomainAddress, deleteAudience для созданной вами аудитории и emptyAudience для созданной вами аудитории, в которой ещё есть контакты. В терминале mcp call спрашивает код и вызывает инструмент снова. Без присмотра она завершается с кодом 4, поэтому сначала запустите openemail verify.
Спросить документацию
openemail docs ask "how do I verify a domain?"openemail docs open cli/authenticationopenemail docs read cli/commandsopenemail docs readdocs askзадаёт вопрос ассистенту документации и выводит ответ по мере написания, а затем страницы, из которых он взят. Он отвечает только по этой документации, не требует входа и никогда не отправляет ваши учётные данные. Вопрос может быть длиной до 600 символов, а каждая сеть может задать ограниченное число вопросов в день.docs openоткрывает страницу в браузере, а--printвместо этого выводит её ссылку.docs readвыводит страницу в Markdown. Без страницы выводит оглавление всех страниц.