---
title: "Writing"
description: "Composing, translating and sending."
url: "https://openemail.uk/docs/mcp/tools/writing"
area: "MCP server"
category: "Tools"
---

# Writing

Composing, translating and sending.

## Writing tools

| Tool | What it does |
| --- | --- |
| composeEmail | Draft an email with AI assistance. Returns the text; it does not save a draft. |
| sendEmail | Send a new email. `translateTo` writes it in the recipient’s language; `includeOriginal` (default true) keeps what you wrote beneath the translation. |
| previewTranslation | What `translateTo` would produce (the translated subject and the exact body sendEmail would put on the wire), with nothing sent and nothing stored. |
| listTranslationLanguages | Every language `translateTo` accepts, optionally filtered by a fragment of a code, an English name or the language’s own name. |

> `sendEmail` takes recipients, subject, body, and optionally a thread or draft id. It does not currently accept attachments, custom headers or a From address. It sends as the active connection.

> There is no draft handling over MCP. Creating and editing drafts is REST-only today.

> `sendEmail` with `translateTo` sends immediately and nobody reads the translation first. Call `previewTranslation`, show the person you are working for what it says, then pass the subject and body they approved back to `sendEmail` with `translateTo` LEFT OUT. Passing it again translates a second time and the wording moves.

> `translateTo` takes a code (`de`), an English name ("German") or the language’s own name ("Deutsch"). One that cannot be placed refuses the call rather than sending the message untranslated. A message going out in a language its sender did not choose is the failure this refusal exists to prevent.

> Translating costs three model calls (the body, the subject, and one to work out what you wrote in) whether you preview or send, so preview once rather than per revision. `listTranslationLanguages` costs nothing; it is a table, not a model call.

> Neither tool proofreads and neither answers the message. Translation is all they do.
