# Tool Reference ← Back to Index · ← Previous: Configuration classic-imap-smtp-mcp registers between 15 (`--readonly`) and 32 (default) tools depending on mode and flags. ## IMAP — Read (12 tools) | Tool | What it does | |---|---| | `imap_list_mailboxes` | Enumerate folders with special-use flags (RFC 6154) | | `imap_status_mailbox` | Counts (unread, total, recent) without SELECT | | `imap_list_messages` | Paginated list in a folder (UID, envelope, flags, size) | | `imap_get_message` | Full message with parsed body + attachment metadata | | `imap_get_message_headers` | Headers only | | `imap_get_message_raw` | RFC-822 raw source | | `imap_get_messages_bulk` | Up to N UIDs in one call | | `imap_search` | Full SEARCH builder (all RFC 3501 criteria) | | `imap_download_attachment` | Extract a specific MIME part | | `imap_get_thread` | Reconstruct conversation via In-Reply-To/References | | `imap_get_quota` | RFC 2087 QUOTA | | `imap_check_capabilities` | Server CAPABILITY list | ## IMAP — Write (8 tools) | Tool | What it does | |---|---| | `imap_mark_message` | STORE flags (\Seen, \Flagged, \Answered, \Deleted, keywords) | | `imap_bulk_mark` | Bulk STORE over multiple UIDs | | `imap_move_message` | MOVE (RFC 6851), fallback COPY+EXPUNGE | | `imap_copy_message` | COPY | | `imap_bulk_move` | Bulk MOVE over multiple UIDs | | `imap_append_message` | APPEND (save drafts, import messages) | | `imap_expunge` | EXPUNGE | | `imap_delete_message` | STORE \Deleted + optional EXPUNGE | ## IMAP — Folder Management (5 tools) | Tool | What it does | |---|---| | `imap_create_mailbox` | Create new folder | | `imap_delete_mailbox` | Delete folder | | `imap_rename_mailbox` | Rename folder | | `imap_subscribe_mailbox` | SUBSCRIBE | | `imap_unsubscribe_mailbox` | UNSUBSCRIBE | ## SMTP (5 tools) | Tool | What it does | |---|---| | `smtp_send` | Send with all options (to/cc/bcc, text+html, attachments, inline images, custom headers). Auto-saves copy to Sent folder (`save_to_sent`, default `true`). | | `smtp_reply` | Reply with correct In-Reply-To/References chain (takes original UID + folder). Sent save like `smtp_send`. | | `smtp_forward` | Forward with original quoted or as attachment. Sent save like `smtp_send`. | | `smtp_verify_connection` | Connection health check | | `smtp_send_raw` | Send pre-formatted RFC-822. Sent save like `smtp_send`. | ### Sent Save Behavior SMTP only delivers — it does not place a copy in your "Sent" folder. Email clients handle this by writing a copy via IMAP after sending. The send tools do this automatically (`save_to_sent`, default `true`). The Sent folder is found via the `\Sent` special-use flag (falls back to common names, or explicit via `sent_mailbox`). **Important:** Send and save are separate. If sending succeeds but the save fails (e.g. Sent folder missing), the email was still delivered. The tool reports success with `saved_to_sent: false` + details. There is **no outbox or retry queue** — a failed send is reported immediately, not queued. ## Meta — Server Introspection (2 tools) | Tool | What it does | |---|---| | `meta_health` | IMAP + SMTP reachability, latency, capabilities | | `meta_server_info` | Active tools, active mode, version | **Full parameter documentation** is available via `classic-imap-smtp-mcp --help` and the JSON schemas exposed in the MCP inspector. Binding output structures for every tool are documented in [`docs/output-shapes.md`](output-shapes.md). --- Next: Output Structures →