email-mcp (codefuturist/email-mcp) is an MCP server listed on the M8ven Trust Index. It scores 73 out of 100, grade C. It declares 49 tools. No publisher has claimed this listing.

C
Caution
73/100

email-mcp

Email MCP server with full IMAP + SMTP support — read, search, send, manage, and organize email from any AI assistant via the Model Context Protocol

codefuturist/email-mcp· npm: @codefuturist/email-mcp· listed on npm

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

codefuturist

Source: npm · also listed on Glama, github_topic

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
⚠️
Tool annotations don’t match behaviour
1 read-only tool performs write/delete/exec — analyze_email_for_scheduling (line 644: REMINDER_KEYWORDS.exec(combined))
🚨
Known vulnerabilities in dependencies: 1 critical, 1 high
Affects packages this MCP installs at runtime. Upgrade or remove the affected dependency.
🔐
You'll be asked for 3 credentials: MCP_EMAIL_OAUTH2_CLIENT_SECRET, MCP_EMAIL_OAUTH2_REFRESH_TOKEN, MCP_EMAIL_PASSWORD
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// known CVEs in dependencies1 critical1 high6 low

Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.

criticalvitest@4.0.18GHSA-5xrq-8626-4rwp

When Vitest UI server is listening, arbitrary file can be read and executed

highnodemailer@8.0.1GHSA-p6gq-j5cr-w38f

Nodemailer: Message-level raw option bypasses disableFileAccess/disableUrlAccess, enabling arbitrary file read and full-response SSRF in the delivered message

lownodemailer@8.0.1GHSA-268h-hp4c-crq3

Nodemailer: CRLF injection in Nodemailer List-* header comments allows arbitrary message header injection

lownodemailer@8.0.1GHSA-c7w3-x93f-qmm8

Nodemailer has SMTP command injection due to unsanitized `envelope.size` parameter

lownodemailer@8.0.1GHSA-r7g4-qg5f-qqm2

Nodemailer: Improper TLS Certificate Validation in OAuth2 Token Fetch Enables Credential Interception

Depend on this server? Get alerted when its CVEs change.Watch this server free →
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configMCP_EMAIL_ACCOUNT_NAMEdefault Account name
configMCP_EMAIL_ADDRESS"": "you@gmail.com",
configMCP_EMAIL_ALERT_DESKTOP
configMCP_EMAIL_ALERT_SOUND
configMCP_EMAIL_ALERT_URGENCY_THRESHOLD
configMCP_EMAIL_ALERT_WEBHOOK_URL
configMCP_EMAIL_FULL_NAMEDisplay name
configMCP_EMAIL_HOOK_AUTO_CALENDAR
configMCP_EMAIL_HOOK_AUTO_FLAG
configMCP_EMAIL_HOOK_AUTO_LABEL
configMCP_EMAIL_HOOK_BATCH_DELAY
configMCP_EMAIL_HOOK_CALENDAR_ALARM_MINUTES
configMCP_EMAIL_HOOK_CALENDAR_CONFIRM
configMCP_EMAIL_HOOK_CALENDAR_NAME
configMCP_EMAIL_HOOK_CUSTOM_INSTRUCTIONS
configMCP_EMAIL_HOOK_ON_NEW_EMAIL
configMCP_EMAIL_HOOK_PRESET
configMCP_EMAIL_IMAP_HOST"": "imap.gmail.com",
configMCP_EMAIL_IMAP_PORT993 IMAP port
configMCP_EMAIL_IMAP_STARTTLS
configMCP_EMAIL_IMAP_TLStrue IMAP TLS
configMCP_EMAIL_IMAP_VERIFY_SSL
configMCP_EMAIL_OAUTH2_CLIENT_ID
🔐 secretMCP_EMAIL_OAUTH2_CLIENT_SECRET
configMCP_EMAIL_OAUTH2_PROVIDER
🔐 secretMCP_EMAIL_OAUTH2_REFRESH_TOKEN
🔐 secretMCP_EMAIL_PASSWORD"": "your-app-password",
configMCP_EMAIL_RATE_LIMIT10 Max sends per minute
configMCP_EMAIL_READ_ONLY
configMCP_EMAIL_SMTP_HOST"": "smtp.gmail.com"
configMCP_EMAIL_SMTP_POOL_ENABLEDtrue Enable SMTP transport pooling
configMCP_EMAIL_SMTP_POOL_MAX_CONNECTIONS1 Max pooled SMTP connections
configMCP_EMAIL_SMTP_POOL_MAX_MESSAGES100 Max messages per pooled connection
configMCP_EMAIL_SMTP_PORT465 SMTP port
configMCP_EMAIL_SMTP_STARTTLSfalse SMTP STARTTLS
configMCP_EMAIL_SMTP_TLStrue SMTP TLS
configMCP_EMAIL_SMTP_VERIFY_SSLtrue Verify SSL certificates
configMCP_EMAIL_USERNAMEemail Login username
configMCP_EMAIL_WATCHER_ENABLED
configMCP_EMAIL_WATCHER_FOLDERS
configMCP_EMAIL_WATCHER_IDLE_TIMEOUT
configXDG_CONFIG_HOMELocated at $/email-mcp/config.toml (default: ~/.config/email-mcp/config.toml).
configXDG_DATA_HOME
configXDG_STATE_HOME
// quality suggestions

All four hints declared on every tool

49/49 tools missing one or more hints — list_accounts (missing: idempotentHint, openWorldHint); get_email_stats (missing: idempotentHint, openWorldHint); download_attachment (missing: idempotentHint, openWorldHint), +46 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tool annotations match behaviour

1 read-only tool performs write/delete/exec — analyze_email_for_scheduling (line 644: REMINDER_KEYWORDS.exec(combined))

Either remove the readOnlyHint:true annotation, or remove the write/delete call from the tool handler.

Tool test coverage

25/49 tools referenced in tests (51%)

Write tests that reference each tool by name so every tool has at least one test.

Shell command execution

22 child_process/subprocess calls in production code — runs shell commands (src/cli/scheduler.ts:136, src/cli/scheduler.ts:149, src/cli/scheduler.ts:157)

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Production dependencies are patched

0 critical, 1 high severity in production deps — nodemailer@8.0.1 (high), nodemailer@8.0.1 (low)

Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.

Dev dependencies

1 critical/high in dev-only deps (does not ship to users)

Upgrade dev dependencies when convenient.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 6 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/codefuturist/email-mcp?variant=verified)](https://m8ven.ai/mcp/codefuturist/email-mcp)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 99ce431aa81dd4cafc2879bd35b6ee3acd0f2d74
code hash: 5e06459055fe2d2473a7252cb5f3aadc558eec9fe9e97c25b738411444ab0be2
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client