This skill enables you to manage Apple Mail on macOS through natural language. Use it whenever the user mentions email, wants to send messages, or needs to read, search, or organize their inbox.
/plugin marketplace add sweetrb/apple-mail-mcp/plugin install apple-mail@apple-mail-mcpThis skill inherits all available tools. When active, it can use any tool Claude has access to.
This skill enables you to manage Apple Mail on macOS through natural language. Use it whenever the user mentions email, wants to send messages, or needs to read, search, or organize their inbox.
Use this skill when the user:
| Tool | Purpose |
|---|---|
list-messages | List messages in a mailbox (default: INBOX) |
search-messages | Find messages by sender, subject, or content |
get-message | Read the full content of a message |
send-email | Send a new email immediately |
create-draft | Save an email to Drafts for review |
reply-to-message | Reply to a message (supports reply-all) |
forward-message | Forward a message to new recipients |
mark-as-read | Mark a message as read |
mark-as-unread | Mark a message as unread |
flag-message | Flag a message for follow-up |
unflag-message | Remove flag from a message |
delete-message | Move a message to Trash |
move-message | Move a message to a different mailbox |
| Tool | Purpose |
|---|---|
list-mailboxes | List all mailboxes/folders in an account |
get-unread-count | Get count of unread messages |
| Tool | Purpose |
|---|---|
list-accounts | List configured email accounts |
| Tool | Purpose |
|---|---|
health-check | Verify Mail.app connectivity |
get-mail-stats | Get message and unread statistics |
When the user wants to see their inbox:
User: "Check my email"
Action: Use list-messages with mailbox="INBOX"
User: "Do I have any unread emails?"
Action: Use get-unread-count, then list-messages if they want details
When the user wants to find specific emails:
User: "Find emails from Sarah"
Action: Use search-messages with query="Sarah"
User: "Search for emails about the project deadline"
Action: Use search-messages with query="project deadline"
When the user wants to see email content:
User: "Show me that email from John"
Action: First search-messages to find it, then get-message with the ID
When the user wants to send an email:
User: "Send an email to bob@example.com about the meeting"
Action: Use send-email with to=["bob@example.com"], appropriate subject and body
User: "Draft an email to the team" (wants to review first)
Action: Use create-draft, then tell user to review in Mail.app
When the user wants to respond to emails:
User: "Reply to that email"
Action: Use reply-to-message with the message ID and body
User: "Reply all with my thoughts"
Action: Use reply-to-message with replyAll=true
User: "Forward this to my colleague"
Action: Use forward-message with the message ID and recipient
When the user wants to organize:
User: "Mark that as read"
Action: Use mark-as-read with the message ID
User: "Move these newsletters to Archive"
Action: Use move-message with mailbox="Archive"
User: "Delete that spam"
Action: Use delete-message with the message ID
list-messages or search-messages first.to, cc, and bcc parameters must be arrays, even for single recipients: ["email@example.com"]account parameter for others.create-draft when the user wants to review before sending. Recommend this for important emails.\\ in the JSON.User: "Any important emails today?"
→ list-messages to see recent messages
→ Summarize senders and subjects for user
User: "Reply to Sarah's email about the budget"
→ 1. search-messages query="Sarah budget"
→ 2. get-message to read content
→ 3. reply-to-message with user's response
User: "Send an email to the client about the delay"
→ 1. create-draft with the composed email
→ 2. Tell user: "I've created a draft. Please review it in Mail.app before sending."
User: "Check my work email"
→ 1. list-accounts to find work account name
→ 2. list-messages with account="Work Exchange"