whoami
Show which mailbox this connection uses and whether it may send.
account
eu.lettio由 lettio.eu 發布官方發布者v0.5.0更新於 Nov 3, 2026
面向 AI 代理程式的私有、託管於歐盟的 JMAP 電子郵件:讀取、搜尋、回覆、起草、整理、傳送。
AI 翻譯由 AI 模型根據下方的原文描述翻譯,可能有誤。
Private, EU-hosted email for AI agents over JMAP: read, search, reply, draft, organize, send.
Lettio 的託管 MCP 服務(mcp.lettio.eu),由 lettio.eu 發布;需要 OAuth 登入;Streamable HTTP;20 個工具。
暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/eu.lettio%2Fmcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。
{
"mcpServers": {
"lettio": {
"type": "http",
"url": "https://mcp.lettio.eu/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.
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.
The hosted server at https://mcp.lettio.eu/mcp adds three tools that open interactive cards in clients that support MCP Apps, such as Claude:
show_emails: the inbox, a folder or search results as a list you can open, archive and flagshow_email: a whole conversation, with Reply, Reply all, Archive and Trashpreview_email: a drafted message you can edit, preview in your brand and sendSending from a card always needs your click, even when the connection doesn't allow the agent to send on its own. One connection can cover up to 10 mailboxes; searches run across all of them.
Messages are written in Markdown and rendered as a styled email: headings, tables, quotes (end with > — Name), callouts (> [!NOTE] Title), code blocks, numbered steps and buttons ([Label](https://url "button")). The mailbox signature is added automatically; set it with set_signature.
To match your brand, set LETTIO_BRANDS to JSON (or a path to a JSON file) keyed by domain:
Formatted mail goes out as HTML with a plain-text version. Pass format: "plain" to send text as written. Bulk tools take up to 100 ids.
Attachments can be base64 content, a local path, or from_email_id with attachment_id to reuse a file from another message.
Add this to your claude_desktop_config.json:
Restart Claude Desktop; the Lettio tools appear in the tools menu.
Configured entirely through environment variables.
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.
來源:README.md,提交 41ad3bb
Show which mailbox this connection uses and whether it may send.
accountList the mailboxes this server can use.
無需輸入參數。
List folders with message and unread counts.
accountList the most recent emails in a folder, newest first.
limitoffsetaccountmailboxunread_onlySearch email. Combine free text with filters; all given filters must match. With several mailboxes and no account, searches them all.
tofromafterlimitquerybeforeoffsetaccountmailboxsubjectunread_onlyhas_attachmentRead one email: its text and a list of attachments. HTML mail is converted to text.
id必填accountRead the whole conversation an email belongs to, oldest first.
id必填accountOpen an attachment. Text and PDF come back as text, images as images, other files as a binary resource. Give save_to to write it to a local file instead.
accountsave_toemail_id必填attachment_id必填Send an email from this mailbox. This really sends, and the sender is always this mailbox. Write in Markdown; recipients get formatted HTML with a plain-text version.
ccto必填bccbody必填formataccountsubject必填signatureattachmentsReply in the same conversation and send it. Replies to the sender, or to everyone with reply_all.
id必填body必填formataccountreply_allsignatureattachmentsSave a new message to Drafts without sending it.
ccto必填bccbody必填formataccountsubject必填signatureattachmentsSave a reply to Drafts, in the same conversation, without sending it.
id必填body必填formataccountreply_allsignatureattachmentsSend a draft that is already in Drafts. This really sends.
id必填accountShow the signature that is added to outgoing mail.
accountSet the signature added to outgoing mail. Stored on the mailbox, so it applies to every client that reads it.
htmltext必填accountMark emails read or unread.
ids必填read必填accountFlag (star) or unflag emails.
ids必填accountflagged必填Add or remove a label on emails.
addids必填label必填accountMove emails to a folder. Use "archive", "trash" (reversible), "inbox", or a folder name.
ids必填accountmailbox必填Create a mail folder, optionally inside another.
name必填parentaccount已滿足適用檢查項的 100%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
{ "example.com": { "primary": "#231F47", "accent": "#D8093A", "font": "Lexend, Arial, sans-serif" } }{ "mcpServers": { "lettio": { "command": "npx", "args": ["-y", "@lettio/mcp"], "env": { "LETTIO_USERNAME": "[email protected]", "LETTIO_PASSWORD": "your-app-password" } } }}[ { "name": "work", "username": "[email protected]", "password": "app-password" }, { "name": "sales", "username": "[email protected]", "password": "app-password" }]npm installnpm run build[email protected] LETTIO_PASSWORD=app-password npm start