IMAP MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsA | List the configured mailboxes and whether each has its password set. |
| list_foldersA | List every folder in a mailbox, with the detected Sent, Trash and Drafts folders. Folder names are case sensitive and may be nested, so always take names from here rather than guessing. |
| search_messagesA | Search a folder and return message headers, newest first. Dates are YYYY-MM-DD and IMAP compares by day only. 'text' is a server side substring search across the whole message and its behaviour varies by server. include_snippet=True adds the first 200 characters of each body, which means downloading every match, so keep the limit small when using it. raw_criteria takes a raw IMAP search string and overrides the other filters. Reading never marks anything as seen. |
| get_messageA | Fetch one message by uid: headers, body as text, and the list of attachments (names and sizes, not their content). Long bodies are truncated at max_chars and flagged as such. The message stays unread unless mark_seen=True. |
| get_attachmentA | Save one attachment to disk and return the path. Identify it by index or filename from get_message. Defaults to the downloads folder in the project. |
| mark_readC | Mark one or more messages read (read_state=True) or unread. |
| set_flagC | Add or remove an IMAP flag: seen, flagged, answered, draft or deleted. |
| move_messagesA | Move messages to another folder, for example to archive them. Use an exact folder name from list_folders. UIDs change on move. |
| delete_messagesA | Delete messages. By default they move to Trash and can be recovered. permanent=True erases them, and that path previews first: call once to get a confirmation_token, then again with commit=True and that token. |
| send_messageA | Send a new mail. The first call returns a preview of the exact message plus a confirmation_token and sends nothing. Call again with identical arguments, commit=True and that token to actually send. A copy is filed in the Sent folder. attachments are local file paths. |
| reply_to_messageA | Reply to a message, keeping the thread intact. Goes to the sender only unless reply_all=True. Previews first and sends on the second call with commit=True and the confirmation_token, exactly like send_message. |
| create_draftA | Save a draft in the Drafts folder for the user to review and send from their own mail client. Nothing is sent, so no confirmation is needed. |
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 12 tools
Most tools have distinct purposes, but mark_read and set_flag overlap on the 'seen' flag, and delete_messages vs set_flag's 'deleted' could confuse agents. However, descriptions clarify the differences, so ambiguity is limited.
All 12 tools follow a consistent verb_noun pattern in snake_case (e.g., delete_messages, get_attachment, list_folders). No stylistic deviations or mixed conventions.
12 tools is within the ideal 3-15 range. Each tool covers a core email operation (send, read, search, manage), with no redundancies or missing essentials.
The surface covers key IMAP workflows: send, reply, draft, search, get message, attachment download, move, delete, flags, and folder/account listing. Minor gaps exist (e.g., folder creation, expunge, raw message fetch), but agents can accomplish typical tasks without failures.