kiki830621 avatar

Che Apple Mail Mcp

kiki830621/che-apple-mail-mcp

Connects Claude directly to your local Apple Mail via 48 native Swift tools that bypass AppleScript's slowness by querying SQLite directly. You get millisecond searches across subject, sender, recipient, and date fields even with 250K+ emails, plus batch operations on up to 50 messages per call. Covers the full surface: composing with markdown/HTML/plain formats, CRUD for mailboxes and rules, attachment extraction from .emlx files, VIP management, flag colors, and raw header access. Built for macOS 13+ with hardened input validation and fallback paths when SQLite fails. If you're automating Mail.app workflows or need LLM-driven email triage without Python overhead, this is the native option.

GitHub stars
5
tools
59
transport
STDIO
last updated
Apr 2, 2026

Tools

59 tools

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

check_compose_lengthExact encoded URL/body length without Mail access; fits is not full eligibility

Exact encoded URL/body length without Mail access; fits is not full eligibility

No parameter schema in public metadata yet.

get_email_classification_policyRead local policy and approvals

Read local policy and approvals

No parameter schema in public metadata yet.

configure_email_classificationConfigure criteria and explicitly approve/revoke rules

Configure criteria and explicitly approve/revoke rules

No parameter schema in public metadata yet.

classify_emailsRead-only classification and expiring explicit-id plan

Read-only classification and expiring explicit-id plan

No parameter schema in public metadata yet.

apply_email_classificationGuarded move to native Trash with audit; no permanent deletion

Guarded move to native Trash with audit; no permanent deletion

No parameter schema in public metadata yet.

list_accountsList all mail accounts

List all mail accounts

No parameter schema in public metadata yet.

get_account_infoGet account details

Get account details

No parameter schema in public metadata yet.

list_mailboxesList all mailboxes (folders)

List all mailboxes (folders)

No parameter schema in public metadata yet.

create_mailboxCreate a new mailbox

Create a new mailbox

No parameter schema in public metadata yet.

delete_mailboxDelete a mailbox

Delete a mailbox

No parameter schema in public metadata yet.

get_special_mailboxesGet special mailbox names (inbox, drafts, sent, trash, junk, outbox)

Get special mailbox names (inbox, drafts, sent, trash, junk, outbox)

No parameter schema in public metadata yet.

list_emailsList emails in a mailbox

List emails in a mailbox

No parameter schema in public metadata yet.

get_emailGet full email content

Get full email content

No parameter schema in public metadata yet.

search_emailsSearch by subject/content

Search by subject/content

No parameter schema in public metadata yet.

get_unread_countGet unread count

Get unread count

No parameter schema in public metadata yet.

get_email_headersGet all email headers

Get all email headers

No parameter schema in public metadata yet.

get_email_sourceGet raw email source

Get raw email source

No parameter schema in public metadata yet.

get_email_metadataGet metadata (forwarded, replied, size)

Get metadata (forwarded, replied, size)

No parameter schema in public metadata yet.

mark_readMark as read/unread

Mark as read/unread

No parameter schema in public metadata yet.

flag_emailFlag/unflag email

Flag/unflag email

No parameter schema in public metadata yet.

set_flag_colorSet flag color (7 colors)

Set flag color (7 colors)

No parameter schema in public metadata yet.

set_background_colorSet email background color

Set email background color

No parameter schema in public metadata yet.

mark_as_junkMark as junk/not junk

Mark as junk/not junk

No parameter schema in public metadata yet.

move_emailMove to another mailbox

Move to another mailbox

No parameter schema in public metadata yet.

copy_emailCopy to another mailbox

Copy to another mailbox

No parameter schema in public metadata yet.

delete_emailDelete email (to trash)

Delete email (to trash)

No parameter schema in public metadata yet.

compose_emailSend new email (supports cc/bcc/attachments — bare addresses only: a display-name recipient in any list is refused on a send, use `create_draft` (#404); `format`: `plain` only since #304; optional `from_address` for multi-account sender selection)

Send new email (supports cc/bcc/attachments — bare addresses only: a display-name recipient in any list is refused on a send, use `create_draft` (#404); `format`: `plain` only since #304; optional `from_address` for multi-account sender selection)

No parameter schema in public metadata yet.

reply_emailReply to email. Optional: `cc_additional`, `save_as_draft`, `format` (since v2.4.0). `attachments` is currently refused whenever non-empty.

Reply to email. Optional: `cc_additional`, `save_as_draft`, `format` (since v2.4.0). `attachments` is currently refused whenever non-empty.

No parameter schema in public metadata yet.

forward_emailForward email. Optional `body` + `format`. Plain mode embeds RFC 3676 `> ` quoted original.

Forward email. Optional `body` + `format`. Plain mode embeds RFC 3676 `> ` quoted original.

No parameter schema in public metadata yet.

redirect_emailRedirect email (keeps original sender)

Redirect email (keeps original sender)

No parameter schema in public metadata yet.

open_mailtoOpen mailto URL

Open mailto URL

No parameter schema in public metadata yet.

list_draftsList draft emails — each entry carries `subject` + numeric `id`

List draft emails — each entry carries `subject` + numeric `id`

No parameter schema in public metadata yet.

create_draftCreate a draft (supports attachments; optional `from_address` for multi-account sender selection)

Create a draft (supports attachments; optional `from_address` for multi-account sender selection)

No parameter schema in public metadata yet.

update_draftReplace an existing draft (upsert): locate by `draft_id` or exact `subject_match` → create replacement → delete old.

Replace an existing draft (upsert): locate by `draft_id` or exact `subject_match` → create replacement → delete old.

No parameter schema in public metadata yet.

list_attachmentsList email attachments

List email attachments

No parameter schema in public metadata yet.

save_attachmentSave attachment to disk

Save attachment to disk

No parameter schema in public metadata yet.

list_vip_sendersList VIP senders

List VIP senders

No parameter schema in public metadata yet.

list_rulesList mail rules

List mail rules

No parameter schema in public metadata yet.

get_rule_detailsGet rule details

Get rule details

No parameter schema in public metadata yet.

create_ruleCreate a new rule

Create a new rule

No parameter schema in public metadata yet.

delete_ruleDelete a rule

Delete a rule

No parameter schema in public metadata yet.

enable_ruleEnable/disable a rule

Enable/disable a rule

No parameter schema in public metadata yet.

list_signaturesList email signatures

List email signatures

No parameter schema in public metadata yet.

get_signatureGet signature content

Get signature content

No parameter schema in public metadata yet.

list_smtp_serversList SMTP servers

List SMTP servers

No parameter schema in public metadata yet.

check_for_new_mailCheck for new mail

Check for new mail

No parameter schema in public metadata yet.

synchronize_accountSync IMAP account

Sync IMAP account

No parameter schema in public metadata yet.

get_emails_batchGet up to 50 emails in one call (per-item errors)

Get up to 50 emails in one call (per-item errors)

No parameter schema in public metadata yet.

list_attachments_batchList attachments for up to 50 emails

List attachments for up to 50 emails

No parameter schema in public metadata yet.

batch_export_emails_markdownServer-side bulk export to verbatim markdown + attachments (frozen frontmatter manifest; concurrency-serialized per output_dir)

Server-side bulk export to verbatim markdown + attachments (frozen frontmatter manifest; concurrency-serialized per output_dir)

No parameter schema in public metadata yet.

export_emails_markdownDEPRECATED — renamed to `batch_export_emails_markdown`; alias removed no earlier than v3.0

DEPRECATED — renamed to `batch_export_emails_markdown`; alias removed no earlier than v3.0

No parameter schema in public metadata yet.

extract_name_from_addressExtract name from email address

Extract name from email address

No parameter schema in public metadata yet.

extract_addressExtract email from full address

Extract email from full address

No parameter schema in public metadata yet.

get_mail_app_infoGet Mail.app info

Get Mail.app info

No parameter schema in public metadata yet.

import_mailboxImport mailbox from file

Import mailbox from file

No parameter schema in public metadata yet.

check_fdaCheck Full Disk Access status and retry opening this server's index reader now; reports the server's actual SQLite fast-path state (open / just recovered / still unavailable)

Check Full Disk Access status and retry opening this server's index reader now; reports the server's actual SQLite fast-path state (open / just recovered / still unavailable)

No parameter schema in public metadata yet.

check_accessibilityCheck Accessibility permission (the compose/reply GUI paths; without it those tools refuse — except the opt-in direct-write `create_draft` path, which needs Full Disk Access instead)

Check Accessibility permission (the compose/reply GUI paths; without it those tools refuse — except the opt-in direct-write `create_draft` path, which needs Full Disk Access instead)

No parameter schema in public metadata yet.

check_automationCheck Automation permission (Apple Events to Mail) — non-prompting probe, four states with remediation

Check Automation permission (Apple Events to Mail) — non-prompting probe, four states with remediation

No parameter schema in public metadata yet.

get_mail_log_eventsRead Mail's own unified log to find where an event chain stops — read-only. `detail=brief` (default) returns only the static event template, integer arguments and an account letter for `[account - mailbox]` lines

Read Mail's own unified log to find where an event chain stops — read-only. `detail=brief` (default) returns only the static event template, integer arguments and an account letter for `[account - mailbox]` lines

No parameter schema in public metadata yet.

Sponsors

Readme

che-apple-mail-mcp

License: MIT macOS Swift MCP

The most comprehensive Apple Mail MCP server - 59 tools with SQLite-powered millisecond search across 250K+ emails.

English | 繁體中文


Why che-apple-mail-mcp?

FeatureOther MCPsche-apple-mail-mcp
Total Tools~2059
LanguagePythonSwift (Native)
Search SpeedSeconds (AppleScript)Milliseconds (SQLite)
Search FieldsSubject/SenderSubject/Sender/Recipient/Date
Batch OperationsNoUp to 50 emails per call
Mailbox ManagementBasicFull CRUD
Email ColorsNo7 flag colors + background
VIP ManagementNoYes
Rule ManagementPartialFull CRUD
SignaturesNoYes
Raw Headers/SourceNoYes


View the full README on GitHub

Details

Repository
github.com/kiki830621/che-apple-mail-mcp
Categories
Databases, Search & Web Crawling
Package
https://github.com/kiki830621/che-apple-mail-mcp/releases/download/v2.0.1/CheAppleMailMCP
Transport
STDIO
Registry
MCP registry, active

More from kiki830621

Related Databases MCP servers

View all
1smaniches avatarAlphaFold Sovereign MCPsmaniches/alphafold-sovereign-mcpMCP server for AlphaFold and 8 other biomedical data sources with a local SQLite knowledge graph5stars
2bielacki avatarBielacki Igdb Mcp Serverbielacki/igdb-mcp-serverExplore and discover video games from the Internet Game Database. Search titles, view detailed inf…4stars
3malamutemayhem avatarIGDB Games MCP by UnClickmalamutemayhem/unclickVideo game database: search games, companies, genres, and platforms via IGDB. By UnClick.4stars
4mbentham avatarSqlAugurmbentham/sqlaugurMCP server providing AI assistants with safe, read-only SQL Server access4stars
5olgasafonova avatarGLEIF MCP Serverolgasafonova/gleif-mcp-serverAccess the GLEIF LEI database for company verification, KYC, and ownership research.4stars
6tcehjaava avatarTmdb Mcp Servertcehjaava/tmdb-mcp-serverMCP server for The Movie Database (TMDB) API4stars