The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Lettio MCP listing page.
Let your AI assistant read, search and send email from a private, EU-hosted mailbox.
Lettio MCP is a Model Context Protocol server that connects an AI agent (Claude, Cursor, and any other MCP client) to a Lettio mailbox over JMAP. Your assistant can triage your inbox, find a message, and send a reply — without your email ever leaving Europe.
Prefer nothing to install? Lettio also runs as a hosted, OAuth‑secured MCP server at
https://mcp.lettio.eu/mcp— add that URL in your client and sign in. This npm package is the local / self‑hosted option for people who want to run it on their own machine.
| Tool | What it does |
|---|---|
list_accounts | List the mailboxes this server is configured for. |
list_mailboxes | List folders in an account, with message and unread counts. |
list_recent_emails | Most recent messages in a mailbox (defaults to the inbox). |
search_emails | Free‑text search across sender, subject and body. |
read_email | Full content of one message by id. |
send_email | Send a plain‑text email as the signed‑in mailbox. |
reply_email | Reply in‑thread (keeps the conversation), optionally reply‑all. |
set_read_status | Mark a message read or unread. |
flag_email | Flag (star) or unflag a message. |
move_email | Move to a folder — archive, trash (reversible), or a folder name. |
Add this to your claude_desktop_config.json:
Restart Claude Desktop; the Lettio tools appear in the tools menu.
Configured entirely through environment variables.
| Variable | Required | Description |
|---|---|---|
LETTIO_USERNAME | yes | Full email address, e.g. you@yourcompany.eu. |
LETTIO_PASSWORD | yes | Mailbox app password. |
LETTIO_HOST | no | Mail host. Defaults to https://mail.lettio.eu. |
LETTIO_ACCOUNT_NAME | no | Friendly name for the account (default: the username). |
Set LETTIO_ACCOUNTS to a JSON array and omit the single‑account variables:
Then pass account: "work" to any tool to choose which mailbox to use.
Sending is deliberately constrained. Before it sends, the server asks the mail host for the
identities the signed‑in mailbox is allowed to use and requires one that matches the login
address. The From header and the SMTP envelope MAIL FROM are both pinned to that
address. There is no parameter for choosing a different sender, so an agent can never send
"from" a foreign or arbitrary mailbox. Credentials are read from the environment, kept only in
memory, and never logged.
MIT © Valmia Solutions s.r.o.