IMAP MCP Server
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
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connectC | Establish IMAP connection to mail server |
| authenticateC | Login with username and password |
| disconnectB | Close IMAP connection |
| auto_connectB | Connect using config.json credentials (no parameters needed) |
| list_mailboxesC | List all mailbox folders |
| select_mailboxC | Select/open a mailbox folder |
| create_mailboxC | Create a new mailbox folder |
| get_mailbox_statusC | Get mailbox status (message count, unseen, etc.) |
| fetch_emailsC | Fetch emails from mailbox with optional filters |
| get_emailC | Get complete email by UID |
| get_email_headersB | Get only email headers (faster) |
| get_email_bodyC | Get email body content |
| get_attachmentsC | List attachments of an email |
| download_attachmentC | Download attachment content (base64) |
| get_threadC | Get email thread/conversation |
| search_emailsC | Search emails with query |
| search_by_senderC | Search emails by sender address |
| search_by_subjectC | Search emails by subject |
| search_by_dateC | Search emails by date range |
| search_unreadC | Get all unread emails |
| search_flaggedB | Get all flagged/starred emails |
| mark_readC | Mark emails as read |
| mark_unreadC | Mark emails as unread |
| flag_emailC | Add flag to emails |
| unflag_emailC | Remove flag from emails |
| move_emailC | Move emails to another mailbox |
| copy_emailC | Copy emails to another mailbox |
| archive_emailC | Archive emails (move to Archive folder) |
| save_draftB | Save email as draft (automatically includes user signature from config) |
| get_unread_countC | Get count of unread emails |
| get_total_countC | Get total email count in mailbox |
| get_cached_overviewB | Get cached email overview for INBOX, next, waiting, someday (from in-memory cache) |
| refresh_cacheB | Force refresh of email cache for all watched mailboxes |
| start_watchC | Start permanent IDLE watch on INBOX, next, waiting, someday |
| stop_watchC | Stop the permanent IDLE watch |
| idle_watchC | Start watching mailbox for new emails (IMAP IDLE) - single mailbox, temporary |
| get_auto_archive_listB | Get list of senders that are auto-archived |
| add_auto_archive_senderC | Add sender to auto-archive list |
| remove_auto_archive_senderC | Remove sender from auto-archive list |
| reload_auto_archiveB | Reload auto-archive config from file (after manual edit) |
| process_auto_archiveA | Process INBOX and archive emails from listed senders. Use dry_run=true to preview without moving. |
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 41 tools
The tools have clear purposes for core IMAP operations like fetch_emails, move_email, and create_mailbox, but there is notable overlap in search functionality (search_emails, search_by_date, search_by_sender, search_by_subject, search_unread, search_flagged) and in email status retrieval (get_unread_count, get_total_count, get_mailbox_status, get_cached_overview), which could cause confusion or redundancy in agent selection.
Tool names follow a consistent snake_case pattern with clear verb_noun structures, such as fetch_emails, create_mailbox, and download_attachment. Minor deviations exist, like auto_connect (which lacks an object) and idle_watch (which is less descriptive), but overall the naming is predictable and readable.
With 41 tools, the count is excessive for an IMAP server, leading to a bloated interface. Many tools could be consolidated (e.g., multiple search variants into parameters of a single search tool), making it heavy and potentially overwhelming for agents to navigate efficiently.
The tool set provides comprehensive coverage for IMAP email management, including connection handling (connect, authenticate, disconnect), mailbox operations (list_mailboxes, create_mailbox), email retrieval (fetch_emails, get_email), actions (move_email, archive_email, flag_email), search capabilities, and advanced features like auto-archiving and IDLE watching, leaving no obvious gaps for the domain.