marlinjai avatar

Email Mcp

marlinjai/email-mcp

Connects to Gmail, Outlook, iCloud, and generic IMAP providers through a unified interface, handling OAuth flows automatically for Gmail and Outlook. Exposes 24 tools covering search, send, reply, forward, drafts, folder management, and batch operations like deleting or moving hundreds of emails at once. Uses native APIs where possible (Gmail API, Microsoft Graph) and falls back to IMAP for universal compatibility. Search results are compact by default to avoid token bloat, but you can fetch full bodies when needed. Credentials are encrypted at rest with AES-256-GCM. Reach for this when you want Claude to triage your inbox, bulk organize messages, or handle email workflows without switching between different provider APIs.

GitHub stars
13
tools
36
transport
STDIO
last updated
Feb 20, 2026

Tools

36 tools

Public tool metadata for what this MCP can expose to an agent.

email_list_accountsList all configured accounts with connection status

List all configured accounts with connection status

No parameter schema in public metadata yet.

email_add_accountAdd a new IMAP or iCloud account (Gmail/Outlook require setup wizard)

Add a new IMAP or iCloud account (Gmail/Outlook require setup wizard)

No parameter schema in public metadata yet.

email_remove_accountRemove an account and its stored credentials; revokes the Google grant for Gmail, removes Outlook tokens from the local token cache, and reports the outcome

Remove an account and its stored credentials; revokes the Google grant for Gmail, removes Outlook tokens from the local token cache, and reports the outcome

No parameter schema in public metadata yet.

email_test_accountTest connection to an account

Test connection to an account

No parameter schema in public metadata yet.

email_list_foldersList all folders/labels for an account

List all folders/labels for an account

No parameter schema in public metadata yet.

email_searchSearch emails with filters. Returns compact results by default (returnBody=false). Set returnBody=true to include full email bodies

Search emails with filters. Returns compact results by default (returnBody=false). Set returnBody=true to include full email bodies

No parameter schema in public metadata yet.

email_getGet full email content by ID (headers, body, attachment metadata). sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

Get full email content by ID (headers, body, attachment metadata). sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

No parameter schema in public metadata yet.

email_get_threadGet an entire email thread/conversation. On iCloud/IMAP a thread is searched in one folder: INBOX, or the one named in sourceFolder

Get an entire email thread/conversation. On iCloud/IMAP a thread is searched in one folder: INBOX, or the one named in sourceFolder

No parameter schema in public metadata yet.

email_get_attachmentDownload a specific attachment by ID (returns base64 data). sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

Download a specific attachment by ID (returns base64 data). sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

No parameter schema in public metadata yet.

email_save_attachmentDownload an attachment directly to disk, returning metadata only, which avoids the token cost of round-tripping large files as base64. outputPath is relative to a fixed downloads directory and cannot escape it. sourceFolder as on email_get_attachment

Download an attachment directly to disk, returning metadata only, which avoids the token cost of round-tripping large files as base64. outputPath is relative to a fixed downloads directory and cannot escape it. sourceFolder as on email_get_attachment

No parameter schema in public metadata yet.

email_sendCompose and send a new email (to, cc, bcc, subject, body, attachments)

Compose and send a new email (to, cc, bcc, subject, body, attachments)

No parameter schema in public metadata yet.

email_replyReply to an email in its thread. replyAll addresses the sender and all To/Cc recipients except your own address. Attachments supported. sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

Reply to an email in its thread. replyAll addresses the sender and all To/Cc recipients except your own address. Attachments supported. sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

No parameter schema in public metadata yet.

email_forwardForward an email to new recipients (to, cc, bcc, optional text on top, attachments). The original's attachments are left out unless includeOriginalAttachments: true. sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

Forward an email to new recipients (to, cc, bcc, optional text on top, attachments). The original's attachments are left out unless includeOriginalAttachments: true. sourceFolder names the folder on iCloud/IMAP when the message is not in INBOX

No parameter schema in public metadata yet.

email_draft_createSave a draft without sending (attachments supported). inReplyToEmailId saves it as a reply inside that message's thread

Save a draft without sending (attachments supported). inReplyToEmailId saves it as a reply inside that message's thread

No parameter schema in public metadata yet.

email_draft_updateUpdate an existing draft in place. A reply draft stays in its thread. On iCloud/generic IMAP the old draft is deleted and a new one appended, so the returned id is new

Update an existing draft in place. A reply draft stays in its thread. On iCloud/generic IMAP the old draft is deleted and a new one appended, so the returned id is new

No parameter schema in public metadata yet.

email_draft_listList all drafts

List all drafts

No parameter schema in public metadata yet.

email_moveMove an email to a different folder. Supports sourceFolder for IMAP/iCloud

Move an email to a different folder. Supports sourceFolder for IMAP/iCloud

No parameter schema in public metadata yet.

email_transferMove or copy emails between accounts, preserving the original message via raw MIME transfer. deleteAfter=true trashes the source only after a confirmed import

Move or copy emails between accounts, preserving the original message via raw MIME transfer. deleteAfter=true trashes the source only after a confirmed import

No parameter schema in public metadata yet.

email_deleteDelete an email (trash or permanent). Supports sourceFolder for IMAP/iCloud

Delete an email (trash or permanent). Supports sourceFolder for IMAP/iCloud

No parameter schema in public metadata yet.

email_markMark as read/unread, starred, or flagged. Supports sourceFolder for IMAP/iCloud

Mark as read/unread, starred, or flagged. Supports sourceFolder for IMAP/iCloud

No parameter schema in public metadata yet.

email_labelAdd/remove labels (Gmail only)

Add/remove labels (Gmail only)

No parameter schema in public metadata yet.

email_folder_createCreate a new folder

Create a new folder

No parameter schema in public metadata yet.

email_get_labelsList all labels with counts (Gmail only)

List all labels with counts (Gmail only)

No parameter schema in public metadata yet.

email_get_categoriesList all categories (Outlook only)

List all categories (Outlook only)

No parameter schema in public metadata yet.

email_batch_deleteDelete multiple emails at once (up to 1000 for Gmail, batches of 20 for Outlook, UID ranges for IMAP)

Delete multiple emails at once (up to 1000 for Gmail, batches of 20 for Outlook, UID ranges for IMAP)

No parameter schema in public metadata yet.

email_batch_moveMove multiple emails to a folder in a single call

Move multiple emails to a folder in a single call

No parameter schema in public metadata yet.

email_batch_markMark multiple emails read/unread, starred, or flagged at once

Mark multiple emails read/unread, starred, or flagged at once

No parameter schema in public metadata yet.

email_batch_labelAdd or remove labels on multiple emails at once (native batch call on Gmail, one by one elsewhere)

Add or remove labels on multiple emails at once (native batch call on Gmail, one by one elsewhere)

No parameter schema in public metadata yet.

email_report_spamReport an email as spam/junk, training the provider's own filter. Not an abuse report to the provider's security team

Report an email as spam/junk, training the provider's own filter. Not an abuse report to the provider's security team

No parameter schema in public metadata yet.

email_batch_report_spamReport multiple emails as spam/junk at once

Report multiple emails as spam/junk at once

No parameter schema in public metadata yet.

email_create_block_ruleCreate a standing rule that intercepts future mail matching a pattern and either deletes it or moves it. Not supported on iCloud/generic IMAP

Create a standing rule that intercepts future mail matching a pattern and either deletes it or moves it. Not supported on iCloud/generic IMAP

No parameter schema in public metadata yet.

email_list_block_rulesList the standing block rules on an account, for auditing or before deleting one

List the standing block rules on an account, for auditing or before deleting one

No parameter schema in public metadata yet.

email_delete_block_ruleDelete a standing block rule — use to undo a rule that turned out too broad

Delete a standing block rule — use to undo a rule that turned out too broad

No parameter schema in public metadata yet.

email_create_forward_ruleCreate a standing rule that forwards future mail matching a pattern to another address. Creating the same rule twice returns the existing one

Create a standing rule that forwards future mail matching a pattern to another address. Creating the same rule twice returns the existing one

No parameter schema in public metadata yet.

email_list_forward_rulesList every rule on an account that forwards mail elsewhere, including rules made by hand in Gmail or Outlook

List every rule on an account that forwards mail elsewhere, including rules made by hand in Gmail or Outlook

No parameter schema in public metadata yet.

email_delete_forward_ruleDelete a forwarding rule by id

Delete a forwarding rule by id

No parameter schema in public metadata yet.

Sponsors

Readme

@marlinjai/email-mcp

email-mcp logo

A unified MCP server for email access across Gmail, Outlook, iCloud, and generic IMAP providers.

Features

  • 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

Installation

Install globally from npm:

npm install -g @marlinjai/email-mcp

Or run directly with npx (no install needed):

npx @marlinjai/email-mcp

Quick Start


View the full README on GitHub

Details

Repository
github.com/marlinjai/email-mcp
Category
Communication & Messaging
Package
@marlinjai/email-mcp
Transport
STDIO
Registry
MCP registry, active

Related Communication & Messaging MCP servers

View all
1osamahassouna avatarHTML Email Playbookosamahassouna/docs-hubTeaches AI to write HTML email that renders in Outlook, Gmail, and Apple Mail. 21 rules, 6 comps.0stars
2usejunior avatarAgent Emailusejunior/email-agent-mcpLocal email connectivity for AI agents — read, draft, send, and organize Outlook mail via MCP7stars
3gongrzhe avatarGmailgongrzhe/gmail-mcp-serverProvides Gmail integration with auto authentication, enabling email send, read, search, label management, and batch operations via MCP.1.1Kstars
4line avatarLINE Botline/line-bot-mcp-serverMCP server that connects an AI agent to LINE Official Account for messaging, rich menus, and profile access.583stars
5ryaker avatarModular Outlookryaker/outlook-mcpProvides OAuth-authenticated access to Outlook data via MCP enabling email and calendar actions.372stars
6littlebearapps avatarOutlook Assistantlittlebearapps/outlook-assistantMicrosoft Outlook MCP server — 22 tools for email, calendar, contacts, and mailbox management.39stars