Apple Mail integration for Claude Code via MCP
npx claudepluginhub sweetrb/apple-mail-mcpManage Apple Mail through natural language - read, search, send, and organize emails (macOS only)
Share bugs, ideas, or general feedback.
A Model Context Protocol (MCP) server that enables AI assistants like Claude to read, send, search, and manage emails in Apple Mail on macOS.
This server acts as a bridge between AI assistants and Apple Mail. Once configured, you can ask Claude (or any MCP-compatible AI) to:
The AI assistant communicates with this server, which then uses AppleScript to interact with the Mail app on your Mac. All data stays local on your machine.
If you're using Claude Code (in Terminal or VS Code), just ask Claude to install it:
Install the sweetrb/apple-mail-mcp MCP server so you can help me manage my Apple Mail
Claude will handle the installation and configuration automatically.
Install as a Claude Code plugin for automatic configuration and enhanced AI behavior:
/plugin marketplace add sweetrb/apple-mail-mcp
/plugin install apple-mail
This method also installs a skill that teaches Claude when and how to use Apple Mail effectively.
1. Install the server:
npm install -g github:sweetrb/apple-mail-mcp
2. Add to Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"apple-mail": {
"command": "npx",
"args": ["apple-mail-mcp"]
}
}
}
3. Restart Claude Desktop and start using natural language:
"Show me my unread emails"
On first use, macOS will ask for permission to automate Mail.app. Click "OK" to allow.
| Feature | Description |
|---|---|
| List Messages | List messages with pagination, sender filter, date display |
| Search Messages | Search by sender, subject, content, date range, read/flagged status — across all accounts |
| Read Messages | Get full email content (plain text or HTML) |
| Send Email | Compose and send new emails (with optional file attachments) |
| Send Serial Email | Mail merge — send personalized emails to a list of recipients with {{placeholder}} support |
| Create Draft | Save emails to Drafts folder (with optional file attachments) |
| Reply | Reply to messages (with reply-all support) |
| Forward | Forward messages to new recipients |
| Mark Read/Unread | Change read status (single or batch) |
| Flag/Unflag | Flag or unflag messages (single or batch) |
| Delete Messages | Move messages to trash (single or batch) |
| Move Messages | Organize into mailboxes (single or batch) |
| List Attachments | View attachment metadata (name, type, size) |
| Save Attachment | Save attachments to disk |
| Feature | Description |
|---|---|
| List Mailboxes | Show all folders with message/unread counts |
| Create/Delete/Rename Mailbox | Full mailbox lifecycle management |
| List Accounts | Show configured accounts |
| Unread Count | Get unread counts per mailbox |
| Feature | Description |
|---|---|
| List Rules | View all mail rules and their enabled status |
| Enable/Disable Rules | Toggle mail rules on or off |
| Search Contacts | Look up contacts from Contacts.app by name |
| Email Templates | Save, list, use, and delete reusable email templates |
| Feature | Description |
|---|---|
| Health Check | Verify Mail.app connectivity |
| Statistics | Message and unread counts per account, recently received stats |
| Sync Status | Check if Mail.app is actively syncing |
This section documents all available tools. AI agents should use these tool names and parameters exactly as specified.
search-messagesSearch for messages matching criteria. Searches all accounts by default.