sweetrb/apple-mail-mcp/apple-mail
- community
Checking that the SKILL.md file is still in the repository.
Use this skill when the user wants to manage Apple Mail on macOS - reading, searching, sending, replying to, forwarding, and organizing emails and mailboxes. This skill provides access to Apple Mail through MCP tools.
Install
npx vskill@latest install sweetrb/apple-mail-mcp/apple-mailSKILL.md
Apple Mail Skill
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.
When to Use This Skill
Use this skill when the user:
- Wants to check their email or inbox
- Asks to find or search for emails
- Wants to read a specific email message
- Needs to send an email or reply to one
- Wants to create a draft email for review
- Asks to forward an email to someone
- Wants to mark emails as read/unread or flag them
- Asks to delete or move emails
- Mentions Apple Mail, Mail app, inbox, or "my email"
Available Tools
Message Operations
| Tool | Purpose | |
|---|---|---|
list-messages | List messages in a mailbox (all mailboxes if omitted) | |
search-messages | Find messages by sender or subject (query), or by body text (body, IMAP backend) | |
get-message | Read the full content of a message | |
get-message-headers | Read a message's raw RFC 5322 headers (author's Date:, Message-ID, threading ids, Received: trace) without the body | |
get-message-rfc822 | Acquire the complete original RFC 822 bytes over IMAP — untouched, with uid/uidValidity/internalDate/flags/RFC822.SIZE and a SHA-256 — for an archival or forensic .eml (imap: ids only; read-only: EXAMINE + BODY.PEEK[]; inline up to 6 MiB, savePath up to 25 MiB) | |
get-thread | Get the full conversation thread for a message | |
send-email | Send a new email immediately (attachments; inReplyTo/references threading, SMTP only) | |
send-serial-email | Send personalized copies to many recipients (mail merge with {{Key}} placeholders) | |
create-draft | Save an email to Drafts for review (attachments; with inReplyTo/references a threaded draft is filed over IMAP) | |
reply-to-message | Reply to a message (replyAll, send, transport, attachments) | |
forward-message | Forward a message to new recipients (body, send, transport, attachments) | |
mark-as-read | Mark a message as read | |
mark-as-unread | Mark a message as unread | |
flag-message | Flag a message for follow-up (optional color) | |
unflag-message | Remove flag from a message | |
delete-message | Move a message to Trash | |
move-message | Move a message to a different mailbox | |
resolve-message-id | Convert imap: ids to numeric Mail.app ids for the AppleScript reply/forward path. Direct SMTP replies and forwards accept imap: ids without conversion. Not needed for flag colors: since 2.10.0 flag-message/batch-flag-messages write the color over IMAP directly | |
list-attachments | List a message's attachments (name, MIME type, size) | |
save-attachment | Save an attachment to disk | |
fetch-attachment | Fetch an attachment's bytes inline as base64 |
Batch Operations (1-100 ids per call)
| Tool | Purpose | |
|---|---|---|
batch-delete-messages | Move multiple messages to Trash | |
batch-move-messages | Move multiple messages to a mailbox | |
batch-mark-as-read | Mark multiple messages as read | |
batch-mark-as-unread | Mark multiple messages as unread | |
batch-flag-messages | Flag multiple messages (optional color) | |
batch-unflag-messages | Remove flags from multiple messages |
Mailbox Operations
| Tool | Purpose | |
|---|---|---|
list-mailboxes | List all mailboxes/folders in an account | |
get-unread-count | Get count of unread messages | |
create-mailbox | Create a new mailbox/folder | |
delete-mailbox | Delete a mailbox | |
rename-mailbox | Rename a mailbox |
Account Operations
| Tool | Purpose | |
|---|---|---|
list-accounts | List configured email accounts |
Smart Mailbox Operations
Smart mailboxes are criteria-based virtual views, not real folders — use these when the user wants a saved filter/search rather than moving mail. They work on localized macOS because they edit SyncedSmartMailboxes.plist directly (backed up and atomic; existing smart mailboxes are never rewritten).
| Tool | Purpose | |
|---|---|---|
list-smart-mailboxes | List smart mailboxes and their criteria | |
create-smart-mailbox | Create one (needs at least one of fromContains / subjectContains / bodyContains) | |
delete-smart-mailbox | Delete one by name | |
create-newsletter-smart-mailboxes | Propose "NL: <sender>" views for newsletter senders — defaults to `dryRun: true`; pass dryRun: false to actually create them |
Requires Full Disk Access for the Node runtime (~/Library/Mail is TCC-protected); without it these report "no smart mailboxes" rather than a permission error. Changes appear the next time Mail is launched — have the user quit Mail first for reliable results. These tools never quit or restart Mail themselves.
Rules
| Tool | Purpose | |
|---|---|---|
list-rules | List Mail rules and their enabled state | |
create-rule | Create a Mail rule (conditions + actions) | |
enable-rule | Enable a rule by name | |
disable-rule | Disable a rule by name | |
delete-rule | Delete a rule by name |
Contacts
| Tool | Purpose | |
|---|---|---|
search-contacts | Look up people in macOS Contacts to find their email addresses |
Templates
| Tool | Purpose | |
|---|---|---|
save-template | Create or update a reusable email template | |
list-templates | List saved templates | |
get-template | Read a template's full contents | |
use-template | Compose a draft from a template (with overrides) | |
delete-template | Delete a template |
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 96 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/apple-mail/SKILL.md
Popularity
- Repository stars
- 60
- Repository forks
- 19
- Repository npm downloads, 7 days
- 190
- 7-day trend score
- 35
Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 12 Jun 2026, 4 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/sweetrb/apple-mail-mcp/apple-mail)