Email MCP server
io.github.codefuturist/email-mcp·v0.6.0·149 starsIMAP/SMTP email MCP server — 52 tools, stdio + HTTP, IMAP IDLE push, multi-account, AI triage.
149 stars1.0k downloads/wk
Reviews
Write oneNobody has reviewed Email yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Email tools (52, 23 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
add_labelAdd a label to an email.
add_to_calendaranalyze_email_for_schedulingwrite actionapply_templateApply an email template with variable substitution. Use action "preview" to see the result, "draft" to save as draft, or "send" to send immediately.
bulk_actionBatch operation on multiple emails by UID list. Supports mark_read, mark_unread, flag, unflag, move, and delete. Max 100 IDs per call. Returns success/failure counts.
cancel_scheduledwrite actionCancel a scheduled email. Removes it from the queue and deletes the associated draft.
check_calendar_permissionscheck_clipboard_setupDiagnose the clipboard integration used for caught verification codes: platform
check_healthCheck connection health, quota, and capabilities for email accounts, plus local cache
check_notification_setupDiagnose desktop notification support on this platform.
configure_alertswrite actionUpdate alert/notification settings at runtime. Changes take effect immediately.
configure_verificationwrite actionUpdate [settings.verification] at runtime — changes take effect immediately,
create_labelwrite actionCreate a new label. For ProtonMail, creates a folder under Labels/.
create_mailboxwrite actionCreate a new mailbox (folder). Use '/' as separator for nested folders (e.g., 'Work/Projects'). Use list_mailboxes to see existing folders.
create_reminderwrite actiondelete_emailwrite actionDelete an email. By default moves to Trash. Set permanent=true for permanent deletion (⚠️ irreversible).
delete_labelwrite actionDelete a label. For ProtonMail, deletes the label folder.
delete_mailboxwrite action⚠️ DESTRUCTIVE: Permanently delete a mailbox and ALL its contents. This cannot be undone. Use list_mailboxes to verify the folder path.
download_attachmentDownload an email attachment by filename or part id. First use get_email to see available
extract_calendarExtract calendar events (ICS/iCalendar) from an email. Returns structured event data including time, location, attendees, and status.
extract_contactsExtract unique contacts from recent email headers. Returns contacts sorted by frequency (most frequent first). Useful for finding frequent correspondents or building an address book.
find_email_folderwrite actionFind which real mailbox folder(s) an email belongs to.
forward_emailwrite actionForward an email to new recipients with optional additional message. The original is converted
get_emailwrite actionGet the full content of a specific email by ID.
get_email_statswrite actionGet email statistics and analytics for a mailbox. Shows volume, top senders, daily trends, and read/flagged counts.
get_email_statuswrite actionGet the current read/flag/label state of an email without fetching its body.
get_emailsFetch the full content of multiple emails in a single call (max 20).
get_hooks_configGet the current AI hooks configuration including preset, rules, and custom instructions.
get_threadReconstruct a full email conversation thread by following References and In-Reply-To headers.
get_verification_codeFind the newest verification code (OTP/2FA) or sign-in magic link in recent mail,
get_watcher_statusGet the status of IMAP IDLE watcher connections and recent activity.
list_accountsList all configured email accounts. Call this first to discover available account names for use with other tools.
list_calendarslist_emailsList emails in a mailbox with optional filters. Returns paginated results with metadata
list_eventslist_labelsList available labels for an email account.
list_mailboxesList all mailbox folders for an account with unread counts and special-use flags. Use list_accounts first to get the account name.
list_presetsList all available AI triage presets with their descriptions and suggested labels.
list_reminderslist_scheduledList scheduled emails. Shows pending, sent, or all scheduled emails.
list_templatesList all available email templates. Templates are TOML files in ~/.config/email-mcp/templates/ with {{variable}} placeholders for subject and body.
mark_emailwrite actionChange email flags — mark as read/unread, flag/unflag. Idempotent: marking an already-read email as read is a no-op.
move_emailwrite actionMove an email to a different mailbox folder.
remove_labelwrite actionRemove a label from an email. For ProtonMail, this removes the email from the label folder.
rename_mailboxRename an existing mailbox (folder). Use list_mailboxes to see current folder paths.
reply_emailwrite actionReply to an email with proper threading (In-Reply-To & References headers). Use get_email first to read the original.
save_draftSave an email draft to the Drafts folder. Compose over time, then use send_draft to send it. Use list_emails with the Drafts mailbox to see saved drafts.
schedule_emailwrite actionSchedule an email to be sent at a specific time in the future. The email is queued locally and sent automatically when the time arrives.
search_emailsSearch emails by keyword across subject, sender, and body — and, where the local
send_draftwrite actionSend an existing draft email and remove it from Drafts. The draft is fetched, sent via SMTP, then deleted. Use list_emails with the Drafts mailbox to find draft IDs.
send_emailwrite actionSend a new email. Supports plain text or HTML body, CC, and BCC.
test_notificationwrite actionSend a test desktop notification to verify that OS permissions are correctly configured.
Public scan report
scanner v0.1.10 · 2026-11-08 · same rubric, same numbers if you re-run it
- Code scan233 source files scanned13/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 1 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Findings (1)
- highShell command built from a string (injection risk)
exec.shell-concatdist/cli/scheduler.js: …LIST, plist); try { execSync(`launchctl load "${LAUNCHD_PLIST}"`, { stdio: 'pipe' }); …
How Email compares
Against every graded Email MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 74/100
- higher than 42% of 915 Email servers
- Tools
- 52
- the typical Email server has 8
- Tools that change things
- 44%
- typical: 25%. Fewer write tools means less an agent can break
- GitHub stars
- 149
- more than 95% of 502 Email servers
- Downloads a week
- 1,035
- more than 93% of 270 Email servers with a package
What its tools let an agent do: 24 read · 6 create · 13 change · 5 delete · 3 send or post · 1 run or deploy
Release history: 4 versions in the registry since 2026-05-16, latest 2026-10-10, typically one every 14 days.
Install Email in Claude Code, Cursor or VS Code
Runs npx -y @codefuturist/email-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add email-mcp -- npx -y @codefuturist/email-mcp
What the publisher says
From the Email repository's README, as published. We do not edit it. Read it on GitHub
Email MCP Server
An MCP (Model Context Protocol) server providing comprehensive email capabilities via IMAP and SMTP.
Enables AI assistants to read, search, send, manage, schedule, and analyze emails across multiple accounts. Exposes 47 tools, 7 prompts, and 6 resources over the MCP protocol with OAuth2 support (experimental), email scheduling, calendar extraction, analytics, provider-aware label management, real-time IMAP IDLE watcher with AI-powered triage, customizable presets and static rules, and a guided setup wizard.
Highlights
Table of Contents
- Highlights
- Security
- Background
- Install
- Usage
- API
- Maintainers
- Contributing
- License
Security
- All connections use TLS/STARTTLS encryption
- Passwords are never logged; audit trail records operations without credentials
- Token-bucket rate limiter prevents abuse (configurable per account)
- OAuth2 XOAUTH2 authentication for Gmail and Microsoft 365 (experimental)
- Attachment downloads capped at 5 MB with base64 encoding
Background
Most MCP email implementations provide only basic read/send. This server aims to be a full-featured email client for AI assistants, covering the entire lifecycle: reading, composing, managing, scheduling, and analyzing email — all from a single MCP server.
Key design decisions:
- XDG-compliant config — TOML at ~/.config/email-mcp/config.toml
- Multi-account — Operate across multiple IMAP/SMTP accounts simultaneously
- Layered services — Business logic is decoupled from MCP wiring for testability
- Provider auto-detection — Gmail, Outlook, Yahoo, iCloud, Fastmail, ProtonMail, Zoho, GMX
Install
Requires Node.js ≥ 22.
# Run directly (no install needed)
npx @codefuturist/email-mcp setup
# or
pnpm dlx @codefuturist/email-mcp setup
# Or install globally
npm install -g @codefuturist/email-mcp
# or
pnpm add -g @codefuturist/email-mcpDocker
No Node.js required — just Docker.
# Latest stable release
docker pull ghcr.io/codefuturist/email-mcp:latest
# Pin to an exact version (immutable)
docker pull ghcr.io/codefuturist/email-mcp:0.2.3
# Auto-update patches within a minor version
docker pull ghcr.io/codefuturist/email-mcp:0.2
# Track a major version (won't cross breaking-change boundary)
docker pull ghcr.io/codefuturist/email-mcp:0
# Pin to an exact git commit (immutable, CI traceability)
docker pull ghcr.io/codefuturist/email-mcp:sha-abc1234
# Or build from source
docker build -t ghcr.io/codefuturist/email-mcp .Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Email: common questions
- Is Email MCP server safe?
- Mostly: it is graded B (74/100). Read the Email safety report
- How do I install Email?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Email need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Email maintained?
- The last commit was 8 days ago (2026-11-07). The latest release is v0.6.0.
- What can I use instead of Email?
- Servers from other publishers that do the same job: Mailoo - Email MCP Server, Imap MCP server and Fluxmail MCP server. Compare all Email alternatives.
- How does Email compare with other Email MCP servers?
- safety score 74/100 (higher than 42% of 915 Email servers); tools 52 (the typical Email server has 8); tools that change things 44% (typical: 25%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Email
Same job from other publishers: the closest match first, then the best rated.
- Mailoo - Email MCP ServerEmail MCP server for AI agents: IMAP/SMTP, Gmail, Outlook, calendar, ManageSieve, AI triage, OAuth2.5.0(1)GrowingA
- ImapIMAP/SMTP MCP server to search, read, organize, send, reply & forward email for AI assistantsnot reviewedEstablishedA
- FluxmailRead, search, draft, send, and organize email through Gmail, Outlook, and IMAP/SMTP mailboxes.not reviewedGrowingB
- MCPEmailsNever-stored live email: read, send and triage Gmail, Outlook / Microsoft 365, or any IMAP mailbox.not reviewedGrowingA
- Proton Mail (unofficial)Unofficial Proton Mail MCP — send, read, search & organize email over SMTP and IMAPnot reviewedGrowingB