mail-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MAIL_IMAP_DEFAULT_HOST | Yes | IMAP server hostname (e.g. imap.gmail.com) | |
| MAIL_IMAP_DEFAULT_PASS | Yes | IMAP password or app password | |
| MAIL_IMAP_DEFAULT_USER | Yes | IMAP username / email address |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ews_get_messageA | Get full email content via Exchange Web Services using an EWS item ID. |
| ews_search_messagesA | Search emails via Exchange Web Services. Preferred for Microsoft accounts. Supports inbox, sent, drafts, deleted, junk folders. |
| ews_send_messageA | Send email via Exchange Web Services. Works on Microsoft tenants that block SMTP and Graph API. |
| get_setup_guideA | Get detailed setup instructions for email providers (Microsoft OAuth2, Gmail, Zoho, etc.) |
| graph_send_messageA | Send email via Microsoft Graph API (required for personal hotmail/outlook.com accounts where SMTP is blocked) |
| imap_append_messageB | Append a raw RFC822 message to a mailbox |
| imap_bulk_deleteC | Delete up to 500 messages in one operation |
| imap_bulk_moveB | Move up to 500 messages to a mailbox in one operation |
| imap_bulk_update_flagsC | Update flags on up to 500 messages in one operation |
| imap_copy_messageC | Copy a message to mailbox |
| imap_create_mailboxC | Create a new mailbox/folder |
| imap_delete_mailboxC | Delete a mailbox/folder |
| imap_delete_messageC | Delete a message |
| imap_get_attachmentA | Download one attachment to disk |
| imap_get_messageC | Get parsed message details |
| imap_get_message_rawB | Get bounded RFC822 source |
| imap_list_accountsA | List configured IMAP accounts (use list_all_accounts for full capabilities view) |
| imap_list_mailboxesB | List mailboxes for an account |
| imap_mailbox_statusA | Get mailbox message counts (total, unseen, recent) without selecting it |
| imap_move_messageC | Move a message to mailbox |
| imap_rename_mailboxC | Rename a mailbox/folder |
| imap_search_and_deleteC | Search messages and delete matches in one operation (up to 500) |
| imap_search_and_moveA | Search messages and move matches to a mailbox in one operation (up to 500) |
| imap_search_messagesC | Search messages with cursor pagination |
| imap_update_message_flagsC | Add or remove IMAP flags |
| imap_verify_accountC | Verify account connectivity and capabilities |
| list_all_accountsA | List all configured email accounts with their capabilities (IMAP, SMTP, Graph API, EWS). Use this to know which send/read tools to use per account. |
| smtp_forward_messageB | Forward an existing message via SMTP |
| smtp_reply_messageA | Reply to an existing message via SMTP (fetches original for proper threading) |
| smtp_send_messageB | Send a new email via SMTP |
| smtp_verify_accountA | Test SMTP account connectivity and authentication |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 31 tools
The same core operations (send, search, get, delete, move, update flags) are repeated across ews_, graph_, imap_, and smtp_ tools, and the IMAP delete/move/flag tools have overlapping single, bulk, and search-and-act variants. The protocol prefixes and provider notes help, but an agent still has to determine which of several similarly named tools applies to a given task and account.
Most tools cleanly follow a protocol_verb_noun pattern (ews_get_message, imap_create_mailbox, smtp_forward_message). A few outliers like list_all_accounts, imap_list_accounts, imap_mailbox_status, and get_setup_guide break the pattern, but they are easy to understand and not chaotic.
At 31 tools, the surface is heavier than necessary, largely because the same operations are reimplemented per protocol and augmented with bulk/search-and-act variants that could be consolidated. The multi-protocol scope justifies some breadth, but the number will tax an agent's tool-selection decisions.
The set covers the full email lifecycle: send/reply/forward, search/read, move/copy/delete, flag updates, attachment retrieval, mailbox CRUD, account verification, and setup guidance. No major dead-end operation appears to be missing for a mail-focused MCP server.