# apple-mail-mcp

Connects an agent to Apple Mail to search and read messages, sort mail, create drafts, and send email. It runs locally on macOS.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 34
- Author: parasxos
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/parasxos/apple-mail-mcp
- Updated: 2026-10-18
- HTML: https://affpapa.org/en/nevibecode/mcp/parasxos-apple-mail-mcp

## What it does

Search messages by sender, date, mailbox, read status, or attachments, then read their full text and reconstruct conversations. For mail triage, the server prepares a plan for review before applying changes and checks the outcome against Mail afterward. Sending requires an explicit tool call; deleting moves a message to Mail’s Trash.

The server runs locally with Apple Mail on a Mac. For Exchange, it can retrieve message bodies from the server, create drafts in Exchange Drafts, and schedule server-side delivery. Other providers use a local background sender for scheduled messages, so the Mac needs to be on for that process to run. To connect it to Claude Code, run `claude mcp add parasxos-apple-mail-mcp -- uvx apple-mailbox-mcp`.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add apple-mail-mcp -- uvx apple-mailbox-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from apple-mailbox-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add parasxos-apple-mail-mcp -- uvx apple-mailbox-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from apple-mailbox-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "parasxos-apple-mail-mcp": {
            "command": "uvx",
            "args": [
                "apple-mailbox-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from apple-mailbox-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "parasxos-apple-mail-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "apple-mailbox-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from apple-mailbox-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add parasxos-apple-mail-mcp uvx apple-mailbox-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from apple-mailbox-mcp <command>

## When to use it
- find messages by sender, date, or body text
- reconstruct a conversation from matching messages
- review a mail-sorting plan before applying it
- create a draft in Exchange Drafts
- send a message from the intended Apple Mail account

## Example prompts
- Find messages from Maria about the memo last week and show the full conversation.
- Prepare a plan to move the newsletters into a folder, and let me review it before applying changes.
- Create a draft in Exchange Drafts and send the message from my work account.

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89408
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [Front-End Checklist](https://affpapa.org/en/nevibecode/mcp/front-end-checklist.md) — MCP server · ★ 74559
- [Scrapling MCP Server](https://affpapa.org/en/nevibecode/mcp/scrapling-mcp-server.md) — MCP server · ★ 89433

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
