MCP server for agent email — create @voidmail.ai inboxes, send/receive, search, manage aliases. No phone, no CAPTCHA, just an API key.
Server has 13 tools with consistent naming (verb_noun pattern) and descriptions present for all. However, parameter descriptions are minimal (often single phrases), output schemas are not documented, and error handling lacks recovery guidance. Tools follow a clear pattern but fall short of production-grade polish. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications in metadata. Descriptions average ~100 chars, below the 194-char baseline for A+ tools.
Get information about the current agent email account.
Create a new @voidmail.ai email inbox for this agent. Returns an email address and API key. No phone number, no CAPTCHA required.
Create a disposable email alias that routes to this agent's inbox.
Delete an email alias.
Delete an email from the inbox.
Get inbox statistics — total emails, unread count, storage used.
Output schemas not documented. Tools return JSON.stringify(data) with no schema definition visible to LLMs. Agents cannot plan downstream calls or extract specific fields reliably.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Metadata classifies tools as READ_ONLY, WRITE, DESTRUCTIVE but these are not exposed via MCP tool annotations. LLMs cannot infer safety/idempotency from tool definitions alone.
Error handling lacks recovery guidance. API errors return raw error messages (e.g. 'API error: 401') without actionable next steps. No categorization of retryable vs user-fixable vs fatal errors.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
List all email aliases for this agent.
List emails in the agent inbox. Returns structured email data including sender, subject, body, and metadata.
Mark an email as read.
Read a specific email by ID. Returns full email content including body, attachments, and thread info. Auto-marks as read.
Search emails by keyword across subject, body, and sender. Returns matching emails.
Send an email from the agent's @voidmail.ai address.
Set a webhook URL to get notified when new email arrives.
Parameter descriptions are minimal (single phrases). E.g. 'Email ID to read' lacks format/constraint info. Descriptions average ~30 chars vs 72-char baseline. LLMs cannot infer valid formats or ranges.
No pagination documentation in list tools. voidmail_list_inbox accepts limit/offset but response structure (total count, has_more, next_cursor) is not documented. Large result sets risk context window exhaustion.