Multi Mail
Connects a Gmail mailbox via Google sign-in (or an app password once Google's preview is full), exposing tools to search, read threads and messages, read attachments, draft, reply, forward, send, and organise mail with labels (list, create, update, delete), archive, trash and restore threads. Gmail is the only provider where signature reading/editing and draft discarding are supported; filters and the vacation responder are unavailable to app-password mailboxes.
Connects an iCloud mailbox using an app password, enabling search and reading of threads, messages and attachments, drafting, replying, forwarding, sending, plus organising with labels (mapped to iCloud folders), archiving, trashing and restoring threads. Filters, the vacation responder, signatures and discarding drafts are not available for app-password mailboxes, and the labels skill leaves iCloud folders untouched.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Multi MailWhat needs a reply across all my mailboxes?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Multi Mail
Gmail, Outlook, Hotmail, iCloud and Fastmail at once: search, read, draft, send and organise mail.
Multi Mail is a remote MCP server run by Lumman Ltd, London. It puts every mailbox you connect - Gmail, Outlook.com, Hotmail, Microsoft 365, iCloud and Fastmail - behind one connector, so an AI client can search all of them in one call and read, draft, send and organise mail in each. This repository holds what clients install: the manifests for Claude Code, Cursor and Gemini CLI, four skills and their evals. The server itself is not in it.
Before you start
You need a Lumman account with at least one mailbox connected at https://lumman.co/mcp/account/multi-mail. Sign in there with Google, Microsoft, a passkey or an emailed code. Outlook, Hotmail and Microsoft 365 mailboxes connect with Microsoft sign-in, iCloud and Fastmail with an app password, and Gmail with Google sign-in while Google's preview has room; once it is full, a gmail.com or googlemail.com mailbox connects with an app password and a Google Workspace one waits for room. Each mailbox's permissions - reading, drafts, sending, organising and settings - are set on the same page.
Related MCP server: phison-mail-mcp
Add it to your client
Claude
Open Multi Mail in Claude's connectors directory, https://claude.ai/directory/connectors/multi-mail, and press Connect. The listing connects at https://lumman.co/mcp/mail.
Claude Code
/plugin marketplace add lumman-lab/multi-mail
/plugin install multi-mail@multi-mailThe plugin adds the connector at https://lumman.co/mcp/mail and the four skills below. The first time a skill reaches the connector, Claude Code asks you to sign in; if it does not, run /mcp and choose the multi-mail server.
Cursor
Add the connector to ~/.cursor/mcp.json:
{
"mcpServers": {
"multi-mail": { "url": "https://mail.lumman.co/mcp" }
}
}VS Code
Run MCP: Add Server, choose HTTP, paste https://mail.lumman.co/mcp and name it multi-mail. Or add it to your user mcp.json:
{
"servers": {
"multi-mail": { "type": "http", "url": "https://mail.lumman.co/mcp" }
}
}Gemini CLI
gemini extensions install https://github.com/lumman-lab/multi-mailThe extension adds the connector at https://mail.lumman.co/mcp and the four skills below. Its first call opens Lumman's sign-in in your browser; /mcp auth multi-mail opens it again.
ChatGPT
For iCloud or Fastmail, add the mailbox first in your account, under Another mailbox.
Open chatgpt.com/plugins, press +, then Add custom MCP server.
Name it Multi Mail, paste
https://mail.lumman.co/mcp, choose OAuth, tick the box and press Create as a plugin.Install it. On the Lumman page, sign in, add a mailbox if none is connected, and approve.
In a chat, type @ and choose Multi Mail.
Any other client
Add a remote MCP server at https://mail.lumman.co/mcp: Streamable HTTP, OAuth 2.1 with dynamic client registration. No key or client id is needed.
Signing in
The connector answers a client's first call with where to sign in. The client registers itself with Lumman's authorisation server and opens a Lumman page that names it: sign in, add a mailbox if none is connected, and approve. Every client you approve is listed under Connected AI clients at https://lumman.co/mcp/account/multi-mail, where its access can be taken back.
Skills
Claude Code and Gemini CLI load four skills with the connector, and pick one by themselves when a request matches it. In Claude Code each is also a command, such as /multi-mail:triage.
triage- what is waiting across every mailbox: what needs a reply, what needs a decision, what can wait. Changes nothing.attachments- what a PDF (scanned pages included), Word, Excel or PowerPoint attachment says, read as text.drafting- a new message, reply or forward written as a draft and shown to you, then sent only after you say yes to that draft.labels- duplicate labels (Outlook categories), and in Gmail unused ones, found and a merge proposed, with nothing changed until you agree.
Examples:
"What in my Outlook and Gmail still needs a reply?"
"What total does the invoice Dana sent to my Hotmail come to?"
"Reply to Sam in Outlook that Friday works, and show me before it goes."
Tools
Tool | Name | What it does |
| List mailboxes | The mailboxes this account holds, by name |
| Search a mailbox | One mailbox, in its provider's search terms |
| Search every mailbox | Every mailbox at once, newest first |
| Read a thread | Every message in one thread |
| Read a message | One message, with its headers and body |
| Read an attachment | What one attachment holds |
| Draft a message | Composes a message kept as a draft |
| Edit a draft | Replaces what a draft says |
| Draft a reply | A reply, drafted inside its thread |
| Draft a forward | A forward with its files, as a draft |
| Discard a draft | Throws a draft away, nothing sent is touched |
| Send a message | Composes a new message and sends it |
| Send a draft | Sends a draft out of the mailbox |
| Reply to a message | Sends a reply inside the message's thread |
| Forward a message | Sends a message on, with its files |
| List labels | The labels the mailbox holds, with their ids |
| Create a label | Creates a label and returns its id |
| Edit a label | Renames or recolours a label |
| Delete a label | Deletes a label, every message stays |
| Label a thread | Adds or removes the labels a thread holds |
| Archive a thread | Out of the inbox, still in search |
| Move a thread to the trash | Into the trash, where the provider keeps it |
| Restore a thread from the trash | Back out of the trash |
| List filters | The rules incoming mail is filed by |
| Create a filter | Files incoming mail - no forward, bin or junk |
| Delete a filter | Deletes a rule, filed mail stays put |
| Edit the signature | Replaces the mailbox's own signature |
| Read the signature | The mailbox's own signature, as it stands |
| Read the vacation responder | Whether it replies, and what it says |
| Set the vacation responder | Turns it on or off, and what it says |
Where your mail goes
Claude and Claude Code send every call to https://lumman.co/mcp/mail, every other client to https://mail.lumman.co/mcp - two addresses of one server, run by Lumman. Signing in runs through the authorisation server those addresses name. Lumman keeps no copy of your mail: each message and attachment is fetched from its provider when a client asks, its words are screened for prompt attacks by Google Cloud's Model Armor - an attachment asked for as the original file is not - and the mail is passed on only to the client you approved. What the connector passes on, and to whom, is in the privacy policy: https://lumman.co/privacy.
The drafting skill asks the client to show a draft and wait for your yes. What the connector itself enforces is each mailbox's permission to send, set at https://lumman.co/mcp/account/multi-mail: with sending off, nothing is sent, whatever a client asks.
Limits
Gmail sign-in is in Google's preview, which admits a fixed number of accounts; once its places are spent, a gmail.com or googlemail.com mailbox connects with an app password, and a Google Workspace one waits for room.
Discarding a draft, and reading or setting a signature, work only in Gmail mailboxes connected with Google sign-in.
Microsoft lets an Outlook category take a new colour, never a new name.
Mailboxes connected with an app password - iCloud, Fastmail and Gmail - take every tool except filters, the vacation responder, the signature and discarding a draft. iCloud and Fastmail labels are their folders, as your own mail app shows them, and the labels skill leaves them alone.
Each account has a daily allowance of tool calls; past it, a call is refused with the time the next one is available.
Mail whose words screen as a prompt attack is refused rather than passed on, and a call whose screening cannot finish is closed.
Evals
claude plugin eval . runs four cases, one per skill, against invented Hotmail and Gmail mailboxes answered from fixed mock files under evals/.
To see what the skills add, every case ran in two setups with the connector's tools in place: once with the plugin as shipped, once with its skills/ folder removed (claude plugin eval <copy> --ablation none). Run on 18 October 2026 with Claude Code 2.1.292, model claude-sonnet-5-5 and the CLI's default Haiku judge, three runs per case each way:
triage - lists the two threads waiting for a reply and nothing else: 3 of 3 with the skills and 3 of 3 without. The skill adds nothing measurable here.
attachments - gives the total and due date read off the invoice PDF: 3 of 3 with and without. The skill adds nothing measurable here.
drafting - saves the reply as a draft, shows it and asks before sending: 3 of 3 with, 0 of 3 without; without the skills Claude sent the reply at once in every run.
labels - proposes the merge and asks before changing anything: 3 of 3 with, 0 of 3 without; without them Claude re-labelled messages before asking in every run.
Overall score 1.00 with the skills and 0.74 without. Three runs per case is a small sample, and the mocks answer the same whatever Claude changes.
Security
Report a vulnerability privately through GitHub, as SECURITY.md describes.
Support
Write to the address under Contact Us in Lumman's privacy policy: https://lumman.co/privacy.
Licence
The files in this repository are under the MIT licence in LICENSE. The Multi Mail service they connect to is provided under Lumman's terms: https://lumman.co/terms.
This server cannot be deployed
Maintenance
Related MCP Connectors
Email inboxes and calendars for AI agents: send, receive, search, draft and schedule.
Email inboxes and calendars for AI agents: send, receive, search, draft and schedule.
Search connected email, read and manage messages, draft and send, and manage rules for new mail.
Gmail, Outlook, iCloud, Fastmail and any IMAP mailbox for your agent. Scoped OAuth, approved sends.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI assistants to read, search, compose, and send emails by connecting to any IMAP/SMTP provider. It supports comprehensive mailbox management, including draft handling and message deletion, directly through natural language.10286 npm10MIT
- FlicenseBqualityDmaintenanceEnables AI models to send, receive, search, and manage emails via SMTP/IMAP, including support for attachments, contacts, and advanced search.18-
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to read, send, organize, and search emails across multiple IMAP/SMTP mailboxes.1,607 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to search, retrieve, and send email across multiple ordinary IMAP, POP3, and SMTP mailboxes, with per-account permissions and safe sending checks.Apache 2.0