Model Context Protocol (MCP) server for one.com mailboxes. Full email management (IMAP/SMTP) for Claude and AI agents.
Strong foundation with 15 well-named tools, consistent descriptions (avg ~120 chars), and visible input schemas. All tools follow verb_noun naming convention. Descriptions are action-oriented and explain WHAT/WHEN. However, output schemas are not documented in the source code provided, parameter descriptions lack format constraints (e.g., no regex patterns, min/max for numeric fields), and error handling guidance is absent. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications. Composition is sound, tools are single-responsibility and chainable (e.g., search_emails → get_email_content → reply_email). Prompts and resources are well-designed but not evaluated in this dimension.
Create an email draft in the one.com Drafts folder without sending.
Create a new folder or mailbox in the one.com mail account.
Delete emails by moving them to Trash (soft delete) or permanent expunge.
Delete a folder/mailbox from the one.com mail account.
Forward an existing email to new recipients with original header context.
Fetch full email content by UID from a folder. Body is converted to clean Markdown.
Output schemas not documented. Tools return results but LLMs cannot see field structure, forcing them to guess what data is available for downstream chaining. E.g., search_emails likely returns email UIDs, but this is not explicit in the provided source.
Parameter descriptions lack format constraints. E.g., 'limit' parameters have no min/max bounds (should be 1 - 100 or similar), 'query' has no length limit, 'uid' has no type hint (should be 'positive integer'). LLMs will pass invalid values without guidance.
No tool annotations despite clear risk classifications. Tools marked DESTRUCTIVE (delete_folder, delete_emails) and WRITE (send_email, reply_email) should declare destructiveHint=true and idempotentHint=false in schema. This enables agents to reason about safety and retry logic.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 68 | 2026-07-28+ | v2 |
Retrieve the full conversation thread for a given email UID or Message-ID.
Retrieve the most recent emails from a mailbox folder with envelopes.
List all mailboxes/folders in the one.com mail account with message and unread counts.
Mark emails as read, unread, flagged, or unflagged.
Move emails from a source folder to a destination folder.
Rename an existing mailbox/folder.
Reply to an existing email with automated In-Reply-To and References headers.
Search for emails in one.com mailbox using filters (query, folder, sender, recipient, flags).
Send a new outbound email via one.com SMTP server (send.one.com:465).
No error handling guidance. Tools have no documented recovery paths. E.g., if send_email fails due to invalid recipient, what should the agent do? Retry? Ask the user? This is not specified.
Confirmation pattern missing for destructive operations. delete_folder and delete_emails (permanent=true) should support a dry-run or require explicit confirmation to prevent accidental data loss.