Model Context Protocol server for email management and AI chatbot integration. Provides tools for fetching emails, AI-powered summarization, categorization, translation, and chat capabilities within an email client.
Single tool with acceptable naming (fetch_emails starts with verb) and documented schema structure. Description is present and reasonably detailed (178 chars), exceeding the 10-char minimum and falling within the production baseline range (avg 194 chars). Input schema explicitly defines 4 parameters with types and descriptions. However, output schema is not documented in the source code, critical omission for LLM planning. Parameter descriptions are adequate but lack enforcement details (e.g., no explicit constraint on limit max=50, folder enum values, or account_id format patterns). Error handling is not visible in the tool definition. No tool annotations (readOnlyHint, etc.) despite the tool being READ_ONLY. The 'unified' account feature is well-documented in description, reducing ambiguity.
Fetch recent emails from the mailbox. Use 'unified' as account_id to search across ALL connected accounts at once. Use a specific account or group name to filter. Call once with unified for broad queries — avoid multiple per-account calls.
Output schema not documented. LLMs cannot plan follow-up calls or extract required fields (e.g., email IDs, sender emails, timestamps) without knowing the response structure. This violates pattern:tool and forces LLMs to guess at output shape.
Parameter constraints not explicitly enforced in descriptions. 'limit' has 'max 50' mentioned but not as a formal constraint; folder_name lacks an enum of valid values (INBOX, Sent, Drafts, etc.); account_id format (email vs ID vs group:name syntax) could be clearer with format hints.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Tool is READ_ONLY but LLMs have no machine-readable signal that this tool cannot modify state. Blocks idempotency hints and safety reasoning.
Error handling not visible in tool definition. No guidance for LLMs on what to do if account_id is invalid, folder_name doesn't exist, or network failures occur. Missing pattern:recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |