macos-mail-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsA | List all Mail.app accounts with their type, enabled status, and email addresses |
| get_account_detailA | Get detailed information about a specific Mail.app account by name |
| list_mailboxesA | List mailboxes in a Mail.app account, or all mailboxes across all accounts |
| create_mailboxB | Create a new mailbox (folder) in a Mail.app account. Can create top-level or nested mailboxes. |
| get_mailbox_infoB | Get detailed information about a specific mailbox in a Mail.app account |
| list_messagesB | List messages in a mailbox with pagination. Provide accountName and mailboxName to scope the listing. |
| get_messageA | Get the full details of a single message by its ID, including body, headers, recipients, and attachments. If mailboxName is omitted, searches all mailboxes in the account (slower but useful when you don't know which mailbox the message is in). |
| search_messagesA | Search messages by subject, sender, or content. Prefer 'subject' or 'sender' fields which are fast metadata lookups. The 'content' field searches message bodies and is significantly slower and less reliable — it may trigger full message downloads on IMAP accounts and can time out. WARNING: Mail.app loads all matching messages into memory before applying the limit, so searches on large mailboxes can be very slow. Always narrow results with mailboxName and accountName when possible. |
| move_messageA | Move a message to a different mailbox. Gmail uses labels rather than folders. Moving a message adds the destination label but may not remove the original. |
| move_messagesA | Move multiple messages to a different mailbox in a single operation. More efficient than calling move_message multiple times. |
| delete_messageA | Delete a message. Uses Mail's delete verb which routes to the correct Trash. |
| flag_messageB | Set or clear the flag on a message. Optionally specify a flag colour index. |
| mark_readC | Mark a message as read or unread. |
| list_attachmentsA | List all attachments for a message, including their name, MIME type, file size, and download status. |
| save_attachmentB | Save a specific attachment from a message to disk. |
| save_all_attachmentsC | Save all downloaded attachments from a message to disk. |
| read_attachmentA | Read the text content of a text-based attachment inline. Supported types: .txt, .csv, .json, .html, .md, .xml, .log. Use save_attachment for binary files. |
| send_messageA | Compose and send a new email message as plain text. Returns success when the message is queued for sending; actual delivery is not confirmed. Check Mail's Sent or Outbox mailbox to verify delivery. |
| reply_to_messageC | Reply to an existing email message. Does not support attachments (Mail.app limitation). |
| forward_messageA | Forward an existing email message to a new recipient. Does not support adding new attachments (Mail.app limitation). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/marius-cetanas/macos-mail-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server