Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

IMAP MCP Pro

MCPB · IMAP-MCP-PRO-2.39.0.MCPB

Production IMAP & SMTP for Claude: multi-account email search, triage, send, and spam checks.

0 this week 60 Trust /100

Last scanned (40 minutes ago)

Scores higher than 94% of MCPB servers

Category Communication

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security24
  • No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.Unverified
  • Known CVEs were checked across the 178 of 178 dependencies we could resolve, so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • 47 of 178 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency35
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • License check failed: the license (PolyForm-Noncommercial-1.0.0) isn't a recognized OSI-approved license. See how to fix → Fail
  • Actively maintained (last published 15 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability76
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 14624 tokens (~111/item across 131 items; 131 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage98
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 95% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 13 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 131 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Nov 26 +1
    • Stability: 0.97 → pass security
  • 2 Nov 26 −1
    • Stability: pass → 0.97 functional
  • 27 Oct 26 +1
    • Stability: 0.97 → pass security
  • 25 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 23 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 21 Oct 26 +2
    • MCP protocol: fail → pass ▲ functional
  • 20 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed mcpb/https://github.com/Temple-of-Epiphany/imap-mcp-pro/releases/download/v2.39.0/imap-mcp-pro-2.39.0.mcpb

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem mcpb
Reason No attestation published

Background: How many MCP packages publish verified provenance →

Dependencies 178 packages
Packages resolved 178
Stale 47
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 131 exposed · ~14,624 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
imap_execute_unsubscribe ~139

Execute unsubscribe request for one or more senders. Supports HTTP GET/POST and mailto methods. Optional dry-run mode for testing. Updates database with execution results.

NameTypeReqDescription
accountIdstring–Account ID (required for mailto unsubscribe)
dryRunboolean–Dry run mode - validate but do not execute
methodstring–Unsubscribe method (auto detects from link)
senderEmailsarrayyesArray of sender email addresses to unsubscribe from
userIdstringyesUser ID (either canonical user_id UUID or username from the users table). Call imap_list_users for valid values.

No output schema declared.

No examples provided.

imap_export_account ~171

Export the entire account to .eml files, mirroring the full mailbox folder structure under exports/[subfolder]/ (or directly under destPath). Skips non-selectable folders (\Noselect). Each folder is capped by `perFolderLimit` (default 1000). Fetched in chunks. Local only — can be large.

NameTypeReqDescription
accountIdstringyesAccount ID
destPathstring–Absolute path to write DIRECTLY into (full mailbox structure mirrored under it). Must be inside an allowed export root and outside ~/.imap-mcp. Omit to use the managed outbox.
perFolderLimitnumber–Max messages to export per folder (default 1000)
subfolderstring–Optional top-level subfolder to group this export

No output schema declared.

No examples provided.

imap_export_email ~259

Export one or more messages to standard .eml files on the server host (download & save). .eml is the raw RFC822 source — lossless, opens in Outlook/Thunderbird/Apple Mail, with attachments and inline images preserved. Files are written under the per-user outbox (~/.imap-mcp/users/{userId}/outbox/exports/), optionally grouped in a named subfolder. Pass destPath to write directly to a path outside the MCP (e.g. ~/Downloads/sent-mail). All processing is local.

NameTypeReqDescription
accountIdstringyesAccount ID
destPathstring–Absolute path to write .eml files DIRECTLY into (e.g. /Users/you/Downloads/sent-mail). Must be inside an allowed export root (default: your home dir; set IMAP_MCP_ALLOWED_EXPORT_DIRS to restrict) and…
folderstring–Folder containing the messages (default: INBOX)
subfolderstring–Optional subfolder name to group the files (sanitized to a single path segment)
uidsarrayyesUIDs of the messages to export

No output schema declared.

No examples provided.

imap_export_folder ~189

Export all messages in a folder to standard .eml files on the server host, mirroring the folder hierarchy under the per-user outbox (exports/[subfolder]/{folder path}/), or directly under destPath. Capped by `limit` (default 1000; `truncated` flags when the folder held more). Lossless raw-source write. Local only.

NameTypeReqDescription
accountIdstringyesAccount ID
destPathstring–Absolute path to write DIRECTLY into (folder hierarchy mirrored under it). Must be inside an allowed export root and outside ~/.imap-mcp. Omit to use the managed outbox.
folderstring–Folder to export (default: INBOX)
limitnumber–Maximum messages to export (default 1000)
subfolderstring–Optional top-level subfolder to group this export

No output schema declared.

No examples provided.

imap_extract_attachments ~194

Extract file attachments from a block of messages and save them to disk under the per-user outbox (exports/attachments/[subfolder]/). Skips inline images by default; optionally filter by minSizeBytes and by file extension. Filenames are sanitized and UID-prefixed to avoid collisions. Local only.

NameTypeReqDescription
accountIdstringyesAccount ID
extensionsarray–Only extract these file extensions (e.g. ["pdf","docx"]); omit for all
folderstring–Folder containing the messages (default: INBOX)
includeInlineboolean–Include inline images/related parts (default false)
minSizeBytesnumber–Only extract attachments at least this many bytes
subfolderstring–Optional subfolder under exports/attachments/ to group the files
uidsarrayyesUIDs of the messages to extract attachments from

No output schema declared.

No examples provided.

imap_extract_unsubscribe_links ~277

Scan a folder for unsubscribe links and store them for subscription management. Header-first: reads each message's List-Unsubscribe header cheaply (no body download) and only falls back to a full-body fetch when a message has no header and scanBodies is on. Bounded by an internal time budget (maxDurationMs) so it always returns — on timeout it returns a partial result with truncated:true and nextUid for resuming via afterUid. For large folders, paginate with afterUid.

NameTypeReqDescription
accountIdstringyesAccount ID
afterUidnumber–Resume: only process messages with UID greater than this (pass the previous run's nextUid).
folderstring–Folder name
limitnumber–Max emails to process (default: 100)
maxDurationMsnumber–Internal time budget in ms; on exceed, return a partial result with truncated:true (default 50000).
olderThannumber–Optional: Only process emails older than N days
scanBodiesboolean–On a header miss, fetch the full body to find in-body unsubscribe links (slower). Default true.
userIdstringyesUser ID (either canonical user_id UUID or username from the users table). Call imap_list_users for valid values.

No output schema declared.

No examples provided.

imap_folder_status ~36

Get status information about a folder

NameTypeReqDescription
accountIdstringyesAccount ID
folderstringyesFolder name

No output schema declared.

No examples provided.

imap_forward_email ~82

Forward an existing email

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder containing the original email
includeAttachmentsboolean–Include original attachments
textstring–Additional text to include
to–yesForward to email address(es)
uidnumberyesUID of the email to forward

No output schema declared.

No examples provided.

imap_get_account_signature ~33

Get the per-account email signature (plain text + HTML).

NameTypeReqDescription
accountIdstringyesAccount ID

No output schema declared.

No examples provided.

imap_get_attachment ~224

Fetch a single attachment from a message for preview or download. Text-like attachments (txt/md/csv/json/log/...) are returned inline as text (truncated at maxTextChars); images are returned inline as base64 so they can be viewed (large images are saved to disk instead); other binaries (incl. PDFs) are saved under the per-user outbox and the path is returned. Identify the attachment by filename or cid; if the message has exactly one attachment, neither is required.

NameTypeReqDescription
accountIdstringyesAccount ID
cidstring–Select the attachment by Content-ID (for inline images)
filenamestring–Select the attachment by filename (case-insensitive)
folderstring–Folder containing the message (default: INBOX)
maxTextCharsnumber–Max characters to return for text attachments (default 100000)
saveboolean–Also save the attachment to the per-user outbox (always done for non-text binaries)
uidnumberyesUID of the message

No output schema declared.

No examples provided.

imap_get_capabilities ~57

Query IMAP server capabilities and supported extensions (RFC 9051 CAPABILITY command)

NameTypeReqDescription
accountIdstringyesAccount ID
forceRefreshboolean–Force refresh capabilities (bypass cache, default: false)

No output schema declared.

No examples provided.

imap_get_circuit_breaker ~70

Inspect the per-account circuit breaker state (CLOSED / OPEN / HALF_OPEN), failure count, last failure reason, and configured thresholds/timeout. Use this to understand why operations are being blocked when imap_get_metrics shows zero failures.

NameTypeReqDescription
accountIdstringyesAccount ID

No output schema declared.

No examples provided.

imap_get_email ~143

Get the full content of an email (or just headers). Optionally inline the text of text-like and PDF attachments with includeAttachmentText (truncated at maxAttachmentTextChars).

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder name
headersOnlyboolean–Fetch only headers without body content (saves bandwidth and context space)
includeAttachmentTextboolean–Inline extracted text for text-like (txt/md/csv/json/...) and PDF attachments
maxAttachmentTextCharsnumber–Max characters of extracted text per attachment (default 20000)
uidnumberyesEmail UID

No output schema declared.

No examples provided.

imap_get_email_priority ~108

Get the resolved priority of a message: our $Priority-* keyword if set (the explicit user setting), otherwise the compose-time X-Priority / Importance / X-MSMail-Priority header, otherwise normal. The `source` field says which of keyword / header / default the answer came from.

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder containing the message (default: INBOX)
uidnumberyesUID of the message

No output schema declared.

No examples provided.

imap_get_email_sizes ~203

List messages by size to find large emails — uses RFC822.SIZE (no body download, cheap even on big folders). Scan a whole folder or a specific UID set, optionally filter with minSizeBytes, sorted largest-first. The returned `uids` array can be passed straight to imap_bulk_delete_emails or imap_bulk_move_emails to clear space.

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder to scan (default: INBOX)
limitnumber–Max messages to return, largest first (default 100)
minSizeBytesnumber–Only return messages at least this many bytes (e.g. 10485760 = 10 MiB)
orderstring–Sort by size: 'desc' = largest first (default), 'asc' = smallest first
uidsarray–Specific UIDs to size; omit to scan the whole folder

No output schema declared.

No examples provided.

imap_get_largest_emails ~205

Find the largest emails across several folders at once (default: just INBOX) and return the global top-N. Uses RFC822.SIZE — no body download — so it stays cheap even across big folders. Each row is tagged with the folder it came from; results are merged and ranked by size across all folders. Unreadable/\Noselect folders are skipped and reported. Returns per-folder `uids` arrays (UIDs are only unique within a folder) ready to pass to imap_bulk_delete_emails / imap_bulk_move_emails to reclaim space.

NameTypeReqDescription
accountIdstringyesAccount ID
foldersarray–Folders to scan (default: ["INBOX"])
minSizeBytesnumber–Only consider messages at least this many bytes (e.g. 10485760 = 10 MiB)
topNnumber–How many of the largest messages to return overall (default 20)

No output schema declared.

No examples provided.

imap_get_latest_emails ~198

Get the latest emails from a folder. Pass responseMode='handle' to return a resultId for large counts instead of inlining.

NameTypeReqDescription
accountIdstringyesAccount ID
countnumber–Number of emails to retrieve
folderstring–Folder name
responseModestring–How the result should be returned. 'auto' (default): inline if small (<=20), handle for larger, file for huge (>500). 'inline': force full payload (only safe for small results). 'handle': force resul…
storageTypestring–Storage lifetime when a handle is created. 'temp' (default): expires after the configured TTL (~2h). 'persistent': retained until you explicitly delete via imap_results action='delete'. Choose 'persi…

No output schema declared.

No examples provided.

imap_get_mailbox_status ~56

Get mailbox statistics without selecting it (RFC 9051 STATUS command) - more efficient than SELECT

NameTypeReqDescription
accountIdstringyesAccount ID
mailboxName–yesMailbox name or array of mailbox names

No output schema declared.

No examples provided.

imap_get_metrics ~30

Get connection metrics and health information for an account

NameTypeReqDescription
accountIdstringyesAccount ID

No output schema declared.

No examples provided.

imap_get_operation_metrics ~48

Get detailed metrics for IMAP operations

NameTypeReqDescription
accountIdstringyesAccount ID
operationNamestring–Specific operation name (optional, returns all if not specified)

No output schema declared.

No examples provided.

imap_get_outbox_dir ~165

Return the per-user attachment outbox directory path. Files written to this directory can be attached via imap_send_email's attachmentPaths field with no additional setup — the directory is always present in the resolved allow-list. The same v2.17.9 dotfile / size / filename rules apply as for any allow-listed dir; this is a sanctioned drop zone, not a special exempt zone. The directory is created lazily on first access (mode 0700) under ~/.imap-mcp/users/{userId}/outbox/ (curly braces are placeholder syntax — call this tool to get the resolved path). Use this when an agent needs to email a file it just generated on the server host, instead of base64-inlining the bytes through MCP.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

imap_get_quota ~96

Report account storage quota — used / limit / percent — via the IMAP QUOTA extension (RFC 9208). Returns supported:false when the server does not advertise QUOTA. (A single mailbox's size is reported by imap_get_mailbox_status via STATUS=SIZE.)

NameTypeReqDescription
accountIdstringyesAccount ID
mailboxstring–Mailbox whose quota root to query (default: INBOX)

No output schema declared.

No examples provided.

imap_get_smtp_metrics ~73

Get per-account SMTP metrics: send total, success/failure counts, retry counts (split by error category), last-send duration and timestamp, last error info. Pass no accountId to retrieve metrics for all accounts that have sent.

NameTypeReqDescription
accountIdstring–Account ID (omit for all accounts)

No output schema declared.

No examples provided.

imap_get_subscription_summary ~105

Get aggregated subscription summary. Shows all senders with unsubscribe links, email counts, categories, and unsubscribe status. Filter by category or unsubscribed status.

NameTypeReqDescription
categorystring–Filter by category
sortBystring–Sort by field
unsubscribedboolean–Filter by unsubscribe status
userIdstringyesUser ID (either canonical user_id UUID or username from the users table). Call imap_list_users for valid values.

No output schema declared.

No examples provided.

imap_get_unread_count ~48

Get the count of unread emails in specified folders

NameTypeReqDescription
accountIdstringyesAccount ID
foldersarray–List of folders to check (default: all)

No output schema declared.

No examples provided.

imap_get_unsubscribe_links ~89

Get all extracted unsubscribe links from emails. Filter by account or sender. Shows individual email details with unsubscribe links.

NameTypeReqDescription
accountIdstring–Filter by account ID
senderEmailstring–Filter by sender email
userIdstringyesUser ID (either canonical user_id UUID or username from the users table). Call imap_list_users for valid values.

No output schema declared.

No examples provided.

imap_get_unsubscribe_links_for ~160

Read-only: for a block of messages (explicit UIDs, or a folder scan up to `limit`), return per message the unsubscribe links found in BOTH the List-Unsubscribe header and the body, along with sender, recipient, and subject. Does NOT write to the subscriptions database or send anything; the stored/managed flow is imap_extract_unsubscribe_links, and imap_execute_unsubscribe performs an unsubscribe.

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder name (default: INBOX)
limitnumber–When scanning a folder, max messages to inspect (default 100)
uidsarray–Specific UIDs to inspect; omit to scan the folder

No output schema declared.

No examples provided.

imap_get_user ~26

Get user details by username

NameTypeReqDescription
usernamestringyesUsername to lookup

No output schema declared.

No examples provided.

imap_get_usercheck_key ~44

Get UserCheck API key information for a user

NameTypeReqDescription
userIdstringyesUser ID — either canonical user_id UUID or username from the users table.

No output schema declared.

No examples provided.

imap_help ~91

Show IMAP MCP Pro capabilities and copy-paste workflow recipes, by category. Start with no argument (or category="overview") for the topic list. Categories: overview, getting-started, reading, sending, organizing, cleanup, subscriptions, security, bulk, workflows, admin. The exhaustive tool list is available from imap_list_tools.

NameTypeReqDescription
categorystring–Help topic (default: overview)

No output schema declared.

No examples provided.

imap_import_list ~128

Bulk-import addresses into an allow/deny list from CSV or vCard (.vcf — including Apple Contacts exports). Emails are extracted from the content (any CSV column; vCard EMAIL lines), normalized, and deduped.

NameTypeReqDescription
contentstringyesRaw file content (CSV or vCard text)
formatstring–Source format (auto-detects vCard by BEGIN:VCARD)
listTypestringyes–
notestring–Optional note applied to all imported entries
userIdstringyesUser ID (UUID or username)

No output schema declared.

No examples provided.

imap_list_accounts ~26

List all IMAP accounts for current user (from MCP_USER_ID environment variable)

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

imap_list_categories ~38

List all Quick Categories for a user, optionally filtered by account

NameTypeReqDescription
accountIdstring–Account ID to filter by (optional)

No output schema declared.

No examples provided.

imap_list_entries ~56

List a user's allow/deny entries (optionally filtered to one list).

NameTypeReqDescription
listTypestring–Filter to allow or deny; omit for both
userIdstringyesUser ID (UUID or username)

No output schema declared.

No examples provided.

imap_list_folders ~32

List all folders/mailboxes in an IMAP account

NameTypeReqDescription
accountIdstringyesAccount ID

No output schema declared.

No examples provided.

imap_list_providers ~37

List all available email provider presets (Gmail, Outlook, Yahoo, etc.) with pre-configured IMAP/SMTP settings

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

imap_list_staged_attachments ~51

List staging sessions for the current user (or all users if no userId is provided and the caller is admin context). Useful for debugging and quota checks.

NameTypeReqDescription
limitinteger––

No output schema declared.

No examples provided.

imap_list_subscribed_mailboxes ~43

List all subscribed mailboxes (RFC 9051 LSUB/LIST with SUBSCRIBED)

NameTypeReqDescription
accountIdstringyesAccount ID

No output schema declared.

No examples provided.

imap_list_tools ~143

List every MCP tool this server currently exposes, with title, description, parameter names, category and read-only/destructive hints. Generated from the registry at call time. Filter with category (one of: all, user, account, bulk, export, staging, email, folder, subscriptions, categorization, spam, dns, lists, cache, diagnostics, meta, admin, other).

NameTypeReqDescription
categorystring–Filter tools by category slug (default: all). One of: all, user, account, bulk, export, staging, email, folder, subscriptions, categorization, spam, dns, lists, cache, diagnostics, meta, admin, other

No output schema declared.

No examples provided.

imap_list_unarchived_sends ~89

List queued Sent-folder APPEND operations that failed after a successful SMTP send. These are retried automatically every 5 minutes for 24 hours. Use this tool to surface them to the user when the IMAP server has been unavailable.

NameTypeReqDescription
accountIdstring–Filter to one account ID
limitnumber–Max entries to return (default 50)

No output schema declared.

No examples provided.

imap_list_unsubscribe_candidates ~118

List all subscriptions with unsubscribe links. Shows sender, subject, link, method, and email count. Filter by category or unsubscribed status. Perfect for reviewing before executing unsubscribes.

NameTypeReqDescription
categorystring–Filter by category
sortBystring–Sort by field
unsubscribedboolean–Filter by unsubscribe status (default: show all)
userIdstringyesUser ID (either canonical user_id UUID or username from the users table). Call imap_list_users for valid values.

No output schema declared.

No examples provided.

imap_list_users ~15

List all active users

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

imap_mark_as_read ~45

Mark an email as read

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder name
uidnumberyesEmail UID

No output schema declared.

No examples provided.

imap_mark_as_unread ~46

Mark an email as unread

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder name
uidnumberyesEmail UID

No output schema declared.

No examples provided.

imap_mark_subscription_unsubscribed ~85

Mark a sender as unsubscribed in the database. Records timestamp. Useful for tracking which lists you have already unsubscribed from.

NameTypeReqDescription
senderEmailstringyesSender email address to mark as unsubscribed
userIdstringyesUser ID (either canonical user_id UUID or username from the users table). Call imap_list_users for valid values.

No output schema declared.

No examples provided.

imap_move_email ~64

Move an email to another folder (copy + delete)

NameTypeReqDescription
accountIdstringyesAccount ID
sourceFolderstring–Source folder name
targetFolderstringyesTarget folder name
uidnumberyesEmail UID to move

No output schema declared.

No examples provided.

imap_open_web_ui ~136

Return the URL of the embedded Web UI (account management, DNS firewall, categories, Claude Desktop auto-setup) and optionally open it in the default browser. The Web UI auto-starts when the MCP server boots; the actual port may differ from the configured default if there was a collision (probes the configured port then increments by 100 up to 10 attempts). Use this tool when the user asks to "open the web UI" or "show the dashboard".

NameTypeReqDescription
openInBrowserboolean–When true, open the URL in the user default browser. When false (default), only return the URL.

No output schema declared.

No examples provided.

imap_recommend_keywords ~164

Analyze a folder and return candidate category keywords for Claude to turn into recommendations: top sender domains, top senders, and frequent subject terms + bigrams — each flagged whether an existing category keyword already covers it. The server does no AI itself; it returns structured stats so the assistant can propose categories/keywords. Read-only.

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder to analyze (default: INBOX)
limitnumber–Max most-recent emails to sample (default 500, cap 2000)
minCountnumber–Ignore candidates seen fewer than this many times (default 2)
topNnumber–How many candidates to return per category (default 20)

No output schema declared.

No examples provided.

imap_remove_account ~32

Remove an IMAP account from database

NameTypeReqDescription
accountIdstringyesID of the account to remove

No output schema declared.

No examples provided.

imap_remove_keyword ~73

Remove a custom keyword from emails

NameTypeReqDescription
accountIdstringyesAccount ID
folderstring–Folder name
keywordstringyesKeyword to remove (e.g., $Forwarded, $Junk, or custom)
uidsarrayyesArray of email UIDs

No output schema declared.

No examples provided.

Install

How do I install the IMAP MCP Pro server?

IMAP MCP Pro ships as an MCPB bundle, a single file you download and open in an MCP host that supports MCPB bundles, such as Claude Desktop. The host reads the launch command from the bundle's own manifest, so there is no command to copy. Before opening it, check the file's SHA-256 matches the one the MCP registry declares for it, 84d0bb7d13478da5be12f4b02474d9793116caf536dacd2db00e79a605ffafb9; the commands to do that are on this page. If it does not match, do not open it.

mcpb · imap-mcp-pro-2.39.0.mcpb

Download bundle

Check the download matches the SHA-256 the MCP registry declares before you open it. If it does not match, do not open the file.

SHA-256

84d0bb7d13478da5be12f4b02474d9793116caf536dacd2db00e79a605ffafb9

macOS / Linux

echo "84d0bb7d13478da5be12f4b02474d9793116caf536dacd2db00e79a605ffafb9  imap-mcp-pro-2.39.0.mcpb" | shasum -a 256 -c

Windows (PowerShell)

(Get-FileHash -Algorithm SHA256 .\imap-mcp-pro-2.39.0.mcpb).Hash -eq "84d0bb7d13478da5be12f4b02474d9793116caf536dacd2db00e79a605ffafb9"

Run it in the folder you saved the bundle to, then open the file with an MCPB-capable host such as Claude Desktop.

Common questions

What is the IMAP MCP Pro server?

IMAP MCP Pro is listed in the public MCP registry as io.github.Temple-of-Epiphany/imap-mcp-pro. Production IMAP & SMTP for Claude: multi-account email search, triage, send, and spam checks. This page covers its MCPB bundle (https://github.com/Temple-of-Epiphany/imap-mcp-pro/releases/download/v2.39.0/imap-mcp-pro-2.39.0.mcpb).

Is the IMAP MCP Pro server safe to use?

IMAP MCP Pro scores 60 out of 100 on VerifyMCP. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the IMAP MCP Pro server expose?

IMAP MCP Pro exposes 131 tools: imap_create_user, imap_list_users, imap_get_user, imap_db_add_account, imap_db_list_accounts, and 126 more. Their descriptions and schemas cost roughly 14,624 tokens of context every time the server is loaded.

What licence is the IMAP MCP Pro server under?

IMAP MCP Pro declares the PolyForm-Noncommercial-1.0.0 licence, which is not on the OSI-approved list. Read the terms before using it at work, and note this covers the source only, not the cost of any service it calls.