Email MCP for Gmail, iCloud and microsoft
About
Organize, flag, read, delete, and clean email with AI.
Explore
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Email MCP for Gmail, iCloud and microsoftCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
email_list_accounts
List all configured email accounts and their connection status
email_add_account
Add a new IMAP or iCloud email account (Gmail and Outlook require the setup wizard for OAuth)
email_remove_account
Remove an email account
email_test_account
Test an email account connection
email_list_folders
List all email folders for an account
email_search
Search emails with filters. By default returns compact results without full body content to save context. Set returnBody=true to include full email bodies.
email_get
Get a single email by ID
email_get_thread
Get an email thread by thread ID
email_get_attachment
Get an email attachment by ID, returns base64 encoded data
email_send
Send a new email
email_reply
Reply to an existing email
email_forward
Forward an email to new recipients
email_draft_create
Create a new email draft
email_draft_list
List email drafts
email_move
Move an email to a different folder
email_delete
Delete an email (moves to trash by default, or permanently deletes)
email_mark
Mark an email as read/unread, starred, or flagged
email_batch_delete
Delete multiple emails at once. Much faster than individual deletes.
email_batch_move
Move multiple emails to a folder at once. Much faster than individual moves.
email_batch_mark
Mark multiple emails at once (read/unread, starred, flagged). Much faster than individual marks.
email_transfer
Move or copy emails BETWEEN accounts, preserving the original message intact (sender, date, threading) by transferring the raw MIME. Fetches each message from the source account and imports it into the target account. With deleteAfter=true the source copy is sent to trash only after a confirmed import, making this a safe cross-account move.
email_label
Add or remove labels on an email (Gmail only)
email_folder_create
Create a new email folder
email_get_labels
List all labels for an email account (Gmail only)
email_get_categories
List all categories for an email account (Outlook only)
- email_list_accounts: List all configured email accounts and their connection status
- email_add_account: Add a new IMAP or iCloud email account (Gmail and Outlook require the setup wizard for OAuth)
- email_remove_account: Remove an email account
- email_test_account: Test an email account connection
- email_list_folders: List all email folders for an account
- email_search: Search emails with filters. By default returns compact results without full body content to save context. Set returnBody=true to include full email bodies.
- email_get: Get a single email by ID
- email_get_thread: Get an email thread by thread ID
- email_get_attachment: Get an email attachment by ID, returns base64 encoded data
- email_send: Send a new email
- email_reply: Reply to an existing email
- email_forward: Forward an email to new recipients
- email_draft_create: Create a new email draft
- email_draft_list: List email drafts
- email_move: Move an email to a different folder
- email_delete: Delete an email (moves to trash by default, or permanently deletes)
- email_mark: Mark an email as read/unread, starred, or flagged
- email_batch_delete: Delete multiple emails at once. Much faster than individual deletes.
- email_batch_move: Move multiple emails to a folder at once. Much faster than individual moves.
- email_batch_mark: Mark multiple emails at once (read/unread, starred, flagged). Much faster than individual marks.
- email_transfer: Move or copy emails BETWEEN accounts, preserving the original message intact (sender, date, threading) by transferring the raw MIME. Fetches each message from the source account and imports it into the target account. With deleteAfter=true the source copy is sent to trash only after a confirmed import, making this a safe cross-account move.
- email_label: Add or remove labels on an email (Gmail only)
- email_folder_create: Create a new email folder
- email_get_labels: List all labels for an email account (Gmail only)
- email_get_categories: List all categories for an email account (Outlook only)
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"email mcp for gmail, icloud and microsoft": {
"server": {
"command": "npx",
"args": [
"-y",
"@marlinjai/email-mcp"
]
}
}
}
}
McpServers
{
"server": {
"command": "npx",
"args": [
"-y",
"@marlinjai/email-mcp"
]
}
}
Transport
"stdio"
Package
"@marlinjai/email-mcp"
Registry
"npm"
Organize, flag, read, delete, and clean email with AI.
A unified MCP server for email access across Gmail, Outlook, iCloud, and generic IMAP providers.
- Multi-provider support-- Gmail (REST API), Outlook (Microsoft Graph), iCloud (IMAP), and generic IMAP/SMTP
- OAuth2 authentication-- Browser-based OAuth flows for Gmail and Outlook, with automatic token refresh
- Full email client-- Search, read, send, reply, forward, organize, and manage drafts
- Batch operations-- Delete, move, or mark hundreds of emails in a single call
- Lightweight search-- Compact search results by default (~20KB vs ~1.4MB) with optional full body retrieval
- Encrypted credential storage-- AES-256-GCM encryption at rest with machine-derived keys
- Provider-native APIs-- Uses Gmail API and Microsoft Graph where available for richer features, falls back to IMAP for universal compatibility
Or run directly with npx (no install needed):
- Run the interactive setup wizard to add your email accounts:
The wizard will walk you through provider selection and authentication. After each account, it asks if you'd like to add another — so you can set up Gmail, Outlook, and iCloud all in one go.
- Add the server to your MCP configuration (.mcp.json):
{ "mcpServers": { "email": { "command": "npx", "args": ["@marlinjai/email-mcp"] } } }
- Start using email tools in Claude Code — search your inbox, send emails, organize messages, and more.
No configuration needed — the setup wizard handles everything using built-in OAuth credentials (PKCE):
npx @marlinjai/email-mcp setup # Select "Gmail" when prompted # A browser window opens for Google authorization # Grant the requested permissions and return to the terminal
Note:If you prefer to use your own OAuth app, create a Desktop OAuth 2.0 Client in theGoogle Cloud Consolewith the Gmail API enabled.
No configuration needed — the setup wizard handles everything using built-in OAuth credentials (PKCE):
Note:If you prefer to use your own OAuth app, register one in theAzure PortalwithMail.ReadWrite,Mail.Send, andoffline_accesspermissions.
npx @marlinjai/email-mcp setup # Select "iCloud" when prompted # Enter your iCloud email address # Enter the app-specific password you generated
Run the setup wizard with your IMAP/SMTP server details:
npx @marlinjai/email-mcp setup # Select "Other IMAP" when prompted # Enter your IMAP host, port, and credentials # Optionally enter SMTP host and port for sending
All batch tools accept asourceFolderparameter for IMAP/iCloud and include a sequential fallback for maximum compatibility.
Add the following to your.mcp.jsonfile (project-level or global~/.claude/.mcp.json):
{ "mcpServers": { "email": { "command": "npx", "args": ["@marlinjai/email-mcp"] } } }
Once configured, you can ask Claude to interact with your email:
- "Check my inbox for unread messages"
- "Search for emails from[email protected] the last week"
- "Reply to the latest email from Bob and thank him"
- "Move all newsletters to the Archive folder"
- "Delete all spam emails" (uses batch operations for speed)
- "Draft a follow-up email to the team about the meeting"
# Install dependencies pnpm install # Build the project pnpm build # Run in development mode (watch for changes) pnpm dev # Run tests pnpm test # Run tests in watch mode pnpm test:watch # Run integration tests (requires real email accounts) pnpm test:integration
If this project is useful to you, consider supporting its development:
Most email MCP servers only read from IMAP. mail-mcp does everything: 30 tools for reading, searching, sending, replying, forwarding, and bulk operations across IMAP, SMTP, Microsoft Graph API, and Exchange Web Services. Multi-account, native OAuth2, built in Rust. Works with Gmail, Microsoft 365, Hotmail/Outlook.com, Zoho, and any standard IMAP/SMTP server.
A collection of MCP servers to automate virtual secretary tasks within the Microsoft Outlook suite, managing tools like Mail and Categories.
Gmail MCP server (33 tools) with optional recipient allowlist and local audit log
Manage and summarize notes within Gmail using the Gmail API.
An MCP server for interacting with Gmail and Google Calendar, enabling context-aware email and event management.
A secure, no-code MCP server that connects any email inbox to AI assistants for intelligent reading, drafting, and automation.
Interact with Microsoft Outlook for calendar management, email operations, and search functionality.
Access your Microsoft 365 mail, calendar, and files using the Microsoft Graph API.
Access and manage your local Microsoft Outlook calendar on Windows.
Open-source MCP server for job application management — 73 tools, 18 workflows, 18 job portals, React dashboard, email integration, calendar, multi-profile. Runs locally, free, privacy-first.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



