
Apple Mail MCP
If you use Apple Mail on macOS and want Claude to handle your inbox, this is your only option. Gmail and Outlook have APIs; iCloud doesn't. This server bridges the gap with AppleScript, giving Claude read, search, compose, reply, move, flag, and delete access to any account synced through Mail. Message references use stable RFC 2822 IDs rather than fragile integer indexes. An optional MailKit extension pushes real-time new-mail events over localhost HTTP. Ships with a five-agent review skill that catches slop, grammar issues, and passive voice before Claude opens a draft. Requires macOS, Mail.app running, and granting automation permission on first use.
- GitHub stars
- 1
- tools
- 22
- transport
- STDIO
- last updated
- May 3, 2026
Tools
22 toolsPublic tool metadata for what this MCP can expose to an agent.
list_foldersList all accounts and their mailboxes
List all accounts and their mailboxes
No parameter schema in public metadata yet.
create_folderCreate a new mailbox/folder in an account (idempotent)
Create a new mailbox/folder in an account (idempotent)
No parameter schema in public metadata yet.
list_emailsPaginate messages in a mailbox (newest-first)
Paginate messages in a mailbox (newest-first)
No parameter schema in public metadata yet.
get_emailRead a message's full headers and body
Read a message's full headers and body
No parameter schema in public metadata yet.
search_emailsFilter by sender, subject, date range across mailboxes
Filter by sender, subject, date range across mailboxes
No parameter schema in public metadata yet.
compose_emailCreate a draft or send a new message immediately
Create a draft or send a new message immediately
No parameter schema in public metadata yet.
reply_emailReply to a message, open as draft or send immediately
Reply to a message, open as draft or send immediately
No parameter schema in public metadata yet.
move_emailMove a message to any mailbox
Move a message to any mailbox
No parameter schema in public metadata yet.
move_matchingBulk-move all messages matching a filter into a mailbox
Bulk-move all messages matching a filter into a mailbox
No parameter schema in public metadata yet.
archive_emailMove to Archive (iCloud) or All Mail (Gmail)
Move to Archive (iCloud) or All Mail (Gmail)
No parameter schema in public metadata yet.
move_to_junkMove to Junk (iCloud) or Spam (Gmail)
Move to Junk (iCloud) or Spam (Gmail)
No parameter schema in public metadata yet.
flag_emailSet or clear the flag on a message
Set or clear the flag on a message
No parameter schema in public metadata yet.
mark_readMark a message as read or unread
Mark a message as read or unread
No parameter schema in public metadata yet.
delete_emailMove to Deleted Messages (iCloud) or Trash (Gmail)
Move to Deleted Messages (iCloud) or Trash (Gmail)
No parameter schema in public metadata yet.
create_ruleCreate a native Mail rule filing sender domains into a folder (optionally sort existing mail too)
Create a native Mail rule filing sender domains into a folder (optionally sort existing mail too)
No parameter schema in public metadata yet.
list_rulesList all Mail rules with their move-target folder and matched sender domains
List all Mail rules with their move-target folder and matched sender domains
No parameter schema in public metadata yet.
delete_ruleDelete a Mail rule by name
Delete a Mail rule by name
No parameter schema in public metadata yet.
get_pending_eventsDrain real-time new-mail events from the MailKit bridge
Drain real-time new-mail events from the MailKit bridge
No parameter schema in public metadata yet.
summarize_emailSummarize a message in 2-3 sentences via local AI
Summarize a message in 2-3 sentences via local AI
No parameter schema in public metadata yet.
classify_emailClassify by category, priority, and action-required via local AI
Classify by category, priority, and action-required via local AI
No parameter schema in public metadata yet.
draft_replyDraft a reply body via local AI (review before sending)
Draft a reply body via local AI (review before sending)
No parameter schema in public metadata yet.
triage_inboxBulk-classify up to 20 messages, sorted by priority
Bulk-classify up to 20 messages, sorted by priority
No parameter schema in public metadata yet.
Sponsors
Readme
apple-mail-mcp
apple-mail-mcp icon
The only way to give Claude (or any LLM) access to Apple Mail and iCloud.
Gmail and Outlook have APIs. iCloud doesn't. If you're a Mac user whose email lives in Apple Mail — iCloud, iCloud+, or any account synced through it — there's no web API an LLM can call. This server bridges that gap using AppleScript on your local machine.
It gives Claude full control over Apple Mail: read, search, compose, reply, move, flag, and delete messages using natural language, against your real inbox, with no cloud intermediary.
Built on AppleScript via osascript, with an optional MailKit extension for real-time new-mail events.
Tools
Details
- Repository
- github.com/jayvee6/apple-mail-mcp
- Categories
- AI & LLM Tools, Search & Web Crawling, Productivity & Office
- Package
@jdot6/apple-mail-mcp- Transport
- STDIO
- Registry
- MCP registry, active