Labsco
MCP SERVER

Apple Mail MCP

by imdinu

Search every message in Apple Mail — bodies included, not just recent ones — and pull back a thread, its links or an attachment.

Email: Mailboxes & DeliveryVerified
Summary
Body search that covers the whole mailbox, not the last few thousand messages.

On a large mail store the useful question is usually "find the message where someone mentioned X", and that only works if the index covers everything — which is why the setup step that matters is granting Full Disk Access and building the index, not the install itself. Everything here reads: there is no send, no reply and no filing, so it fits research and retrieval rather than inbox management.

What it is

A read-only reader for Apple Mail on macOS. It builds an FTS5 full-text index over the local mail store and reads .emlx files and the Envelope Index directly, with AppleScript kept as a fallback rather than the main path.

What you get
  • search runs across every account and mailbox at once, scoped to all, subject, sender, body or attachments, with before and after date bounds, mailbox exclusions, paging and match highlighting
  • Body search covers the whole mailbox through the index, rather than live-scanning only the most recent messages
  • list_accounts and list_mailboxes enumerate what exists; get_emails lists one mailbox with filters for all, unread, flagged, today or last_7_days
  • get_email fetches a single message with its full content, and finds it across accounts from the message id alone — account and mailbox are hints, not requirements
  • get_email_links extracts an email's hyperlinks, deduplicated with their anchor text, with mailto:, javascript: and long tracking URLs filtered out
  • get_email_attachment parses the raw MIME structure and saves a file under ~/.apple-mail-mcp/attachments/, including inline images and S/MIME parts
  • Defaults set once with apple-mail-mcp init, which writes a config.toml; every key has a matching APPLE_MAIL_ environment variable, and the client's launch config can override per client
Requirements

macOS with Apple Mail, and Python 3.11 or higher — installed with pipx install apple-mail-mcp and run as apple-mail-mcp. The search index is what makes body search and link extraction work: build it with apple-mail-mcp index, which needs Full Disk Access granted to Terminal under System Settings → Privacy & Security. Nothing leaves the machine and no account credentials are involved — it reads the local mail store. GPL v3.

Setup effort

One command — pipx install apple-mail-mcp