MCP connector for reading and sending email over standard IMAP/SMTP (works with IONOS, GMX, Web.de, and most other providers that support username/password auth)
Server has 6 tools with complete schemas and descriptions. Naming follows verb_noun convention (list_, search_, get_, mark_, send_). Descriptions are present but brief (avg 80 chars, below 194-char baseline). Parameter descriptions are mostly present but lack detail on constraints and formats. Output schemas are not documented. Error handling returns JSON with isError flag but lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint). Missing parameter descriptions for some fields (e.g., 'limit' in list_messages lacks description text, only has min/max). send_mail lacks required field validation guidance.
Fetch the full content (text, html, attachments metadata) of a single message by UID.
List all IMAP folders/mailboxes in the mailbox (e.g. INBOX, Sent, Drafts, Trash).
List the most recent messages in a mailbox, newest first.
Change the read or flagged status of a message.
Search messages in a mailbox by sender, recipient, subject, body text, or date range.
Send a new email, or reply to an existing one, via SMTP.
Output schemas not documented. LLMs cannot plan downstream calls or extract required fields (e.g., message UID from search results for get_message chaining).
Missing tool annotations. No readOnlyHint on read tools (list_*, search_*, get_*) or destructiveHint on write tools (mark_message, send_mail). Agents cannot distinguish safe from risky operations.
Error handling returns generic error text without recovery guidance. E.g., 'Error: mailbox not found' does not suggest calling list_mailboxes() first or offer available alternatives.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
send_mail lacks validation guidance in description. No mention of required fields (to, subject), format constraints (email addresses), or what happens on invalid input. Description is 60 chars, below 194-char baseline.
Parameter descriptions lack format/constraint details. E.g., 'since' and 'before' say 'ISO date' but do not specify exact format (YYYY-MM-DD vs ISO 8601 with time). 'to' in send_mail says 'comma-separated' but does not validate format or reject invalid emails.