Imail
БесплатноНе проверенMCP server that connects Claude to iCloud Mail, enabling reading, searching, sending, and organizing emails via IMAP/SMTP.
Описание
MCP server that connects Claude to iCloud Mail, enabling reading, searching, sending, and organizing emails via IMAP/SMTP.
README
🇷🇺 Документация на русском: README.ru.md
An MCP server that connects Claude (Cowork / Claude Code / Claude Desktop) to your email account so it can read, search, send, and organize your mail — directly from a conversation.
iCloud Mail is the first supported provider. The internals are written against a provider-agnostic interface, so Gmail / Microsoft 365 adapters can be added later without touching a single tool.
Highlights
- 📥 Read & search — list folders, search by sender/subject/text/date, read full messages and whole threads, download attachments.
- ✉️ Send & reply — compose, reply, reply-all, and forward with correct threading headers set automatically.
- 🗂️ Organize — move, archive, delete, and mark messages read/unread or flagged.
- 🔒 Credentials stay local — stored in the macOS Keychain, never in a plaintext file or env var.
- 🛑 Never sends silently — Claude is instructed to always preview an email and get your explicit approval before anything leaves your outbox.
Why a one-time setup (and no "Sign in with Apple" button)
Apple does not offer an OAuth / consent flow for third-party access to iCloud Mail. The only supported path is standard IMAP + SMTP with an app-specific password (required because every iCloud account uses 2FA).
So setup is a one-time step: generate that password once, hand it to the server, done. It is verified with a live IMAP login and then stored in your macOS Keychain — not on disk, not in your shell profile.
Platform note: credential storage uses the built-in macOS
securityCLI, so the server currently targets macOS. (A different keystore backend is all that's needed to support Linux/Windows.)
Install & connect
Requires Node.js ≥ 18.
git clone [email protected]:nurked/icloud-mail-mcp.git
cd icloud-mail-mcp
npm install
npm run build
npm run setup # or: node dist/bin/setup.js
setup opens a local page at http://127.0.0.1:4577 (bound to localhost
only — never exposed off your machine). The page:
- Links you to Apple's app-specific password page.
- Takes your iCloud address + the 16-character password you generate.
- Does a live IMAP test login to verify it works.
- Saves the credentials to your Keychain.
Generating the app-specific password
- Open appleid.apple.com → Sign-In and Security → App-Specific Passwords.
- Click Generate an app-specific password, name it
imail-mcp. - Copy the 16-character password and paste it into the setup page.
Wire it into Claude
Add the server to your MCP config (Claude Desktop / Cowork / Claude Code
mcpServers):
{
"mcpServers": {
"imail": {
"command": "node",
"args": ["/absolute/path/to/icloud-mail-mcp/dist/index.js"]
}
}
}
If you install the package globally (
npm linkornpm i -g), you can use"command": "imail-mcp"with noargsinstead.
Restart Claude and the imail tools become available.
Tools
| Tool | What it does |
|---|---|
list_mailboxes |
List folders with their IMAP paths and special-use roles |
search_messages |
Search by from / to / subject / text / date / unread (filters AND together) |
get_message |
Full headers, text + HTML body, attachment metadata |
get_thread |
The whole conversation, oldest → newest |
download_attachment |
Save an attachment to a temp file, return its path |
compose_preview |
Build an email for review — does not send |
send_email |
Send now (only after your approval) |
save_draft |
Put it in Drafts for you to send yourself |
reply |
Reply / reply-all, threading headers set from the original |
forward |
Forward to new recipients with a quoted header |
move_message |
Move a message to another mailbox |
set_flags |
Mark read/unread, flag/unflag |
archive_message |
Move to Archive |
delete_message |
Move to Trash (expunge if already there) |
Sending is never silent
The server ships an instruction telling Claude to always show you a
compose_preview and get your explicit go-ahead before calling send_email
(or reply / forward). If you'd rather send it yourself, ask Claude to
save_draft instead and the message lands in your Drafts folder.
How it works
Claude ──stdio──▶ imail-mcp ──IMAP (imap.mail.me.com:993)──▶ iCloud
│ └─SMTP (smtp.mail.me.com:587)──▶ iCloud
└─ credentials ◀── macOS Keychain
- IMAP (imapflow) handles reading and organizing; SMTP (nodemailer) handles sending; bodies are parsed with mailparser.
- The provider connects lazily on the first tool call, so adding the server to Claude doesn't touch your mailbox until you actually use it.
- The MCP
stdiotransport owns stdout, so all logging goes to stderr to keep the protocol stream clean.
Project layout
src/
index.ts MCP server + tool definitions
bin/setup.ts `imail-mcp-setup` entry point
auth/
setup-server.ts local connect page + live IMAP verification
keychain.ts macOS Keychain storage (via `security` CLI)
providers/
types.ts provider-agnostic MailProvider contract
icloud.ts iCloud IMAP/SMTP implementation
Adding another provider
The tools only ever talk to the MailProvider interface, so a new backend is
one new file:
- Implement
MailProvider(see src/providers/types.ts) in a new file undersrc/providers/. - Select it in src/index.ts.
The tools stay unchanged.
Troubleshooting
- "No iCloud credentials found" — run
npm run setupfirst; the server reads from the Keychain on first tool use. - "Login failed" during setup — make sure you used an app-specific password, not your normal Apple ID password.
- Re-connecting / changing accounts — just run
npm run setupagain; it overwrites the stored credentials (-Uupdate) after a fresh verification.
License
PolyForm Noncommercial License 1.0.0 — this is source-available, not OSI open source.
- ✅ Free for any noncommercial purpose — personal use, study, research, hobby projects, and use by nonprofits, schools, and government bodies.
- ✅ You may read, modify, and redistribute it; the copyright notice must stay intact, so your work is always credited.
- 💼 Commercial use requires a separate license. If you want to use imail-mcp to make money — in a product, a paid service, or inside a for-profit company — contact Investment Fidelity Company at [email protected] to arrange a commercial license.
See LICENSE.md for the full terms.
Установка Imail
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/nurked/icloud-mail-mcpFAQ
Imail MCP бесплатный?
Да, Imail MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Imail?
Нет, Imail работает без API-ключей и переменных окружения.
Imail — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Imail в Claude Desktop, Claude Code или Cursor?
Открой Imail на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Gmail
Read, send and search emails from Claude
автор: GoogleSlack
Send, search and summarize Slack messages
автор: SlackRunbear
No-code MCP client for team chat platforms, such as Slack, Microsoft Teams, and Discord.
Discord Server
A community discord server dedicated to MCP by [Frank Fiegel](https://github.com/punkpeye)
Compare Imail with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории communication
