About Lettio MCP
Lettio MCP connects AI agents to Lettio mailboxes over JMAP for email management. It supports multiple accounts and restricts sending to the signed-in mailbox identity.
Key features
- 01List mailboxes and recent messages
- 02Search and read email
- 03Send and reply to messages
- 04Mark messages read or unread
- 05Flag and move messages
Use cases
- 01Triage an inbox
- 02Find and read a specific email
- 03Reply in an existing thread
- 04Organize messages across folders
MCP support
Exposes mailbox and email operations as MCP tools. It can run locally or self-hosted, or connect through Lettio’s hosted OAuth-secured MCP endpoint.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.lettio.eu/mcpclaude mcp add --transport http eu-lettio https://mcp.lettio.eu/mcp{"mcpServers":{"eu-lettio":{"type":"http","url":"https://mcp.lettio.eu/mcp"}}}Open in Cursor{"servers":{"eu-lettio":{"type":"http","url":"https://mcp.lettio.eu/mcp"}}}Open in VS Code{"mcpServers":{"eu-lettio":{"type":"http","url":"https://mcp.lettio.eu/mcp"}}}{"mcpServers":{"eu-lettio":{"serverUrl":"https://mcp.lettio.eu/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMELettio MCP
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.
- 🇪🇺 European by default — talks to your own EU-hosted mailbox, no third‑party middleman.
- 🔒 Safe sending — the server can only ever send as the mailbox it is signed in to. It cannot be tricked into sending from another address.
- 📬 Everything an agent needs — list, search, read and send, over the open JMAP standard.
- 👥 One or many mailboxes — configure a single account or several.
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.
Tools
| 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. |
Requirements
- Node.js 18 or newer.
- A Lettio mailbox and an app password for it (use a dedicated app password, not your main login).
Use with Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"lettio": {
"command": "npx",
"args": ["-y", "@lettio/mcp"],
"env": {
"LETTIO_USERNAME": "[email protected]",
"LETTIO_PASSWORD": "your-app-password"
}
}
}
}
Restart Claude Desktop; the Lettio tools appear in the tools menu.
Configuration
Configured entirely through environment variables.
Single mailbox
| Variable | Required | Description |
|---|---|---|
LETTIO_USERNAME | yes | Full email address, e.g. [email protected]. |
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). |
Several mailboxes
Set LETTIO_ACCOUNTS to a JSON array and omit the single‑account variables:
[
{ "name": "work", "username": "[email protected]", "password": "app-password" },
{ "name": "sales", "username": "[email protected]", "password": "app-password" }
]
Then pass account: "work" to any tool to choose which mailbox to use.
Security
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.
Run from source
npm install
npm run build
[email protected] LETTIO_PASSWORD=app-password npm start
License
MIT © Valmia Solutions s.r.o.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.