Email MCP Server with Agent system integration. Provides tools for email operations (send, receive, search, delete), prompts for plugin documentation, and background email listening via IMAP IDLE.
Email MCP server has well-structured tool definitions with comprehensive parameter schemas and descriptions. All 8 tools are explicitly registered with FastMCP and include detailed input schemas. Naming follows verb_noun convention (list_, add_, get_, search_, send_, delete_, download_). Descriptions are present and actionable (avg ~150 chars). However, output schemas are not documented in the visible code, response types are referenced (EmailMetadataCursorResponse, etc.) but their structure is not shown. Error handling is minimal; no recovery guidance or actionable error messages visible. Security concern: add_email_account accepts plaintext passwords as parameters, violating secret-injection pattern. Pagination support is good (cursor-based + deprecated offset), but no per-item success/failure for batch operations (delete_emails, download_attachment).
Add a new email account configuration to the settings.
Delete one or more emails by their email_id. Returns list of successfully deleted email_ids and list of failed email_ids.
Download an email attachment and save it to the specified path.
Get the full content (including body) of one or more emails by their email_id. Use list_emails_metadata first to get the email_id.
List all configured email accounts with masked credentials.
List email metadata (email_id, subject, sender, recipients, date) without body content. Returns email_id for use with get_emails_content.
Credentials exposed as tool parameters: add_email_account accepts plaintext password, user_name in incoming/outgoing objects. Passwords will be logged in agent traces and prompt history.
Output schemas not documented in visible code. Response types (EmailMetadataCursorResponse, AttachmentDownloadResponse) are referenced but their field structure is not shown. LLMs cannot plan downstream tool calls without knowing what fields to expect.
No error handling guidance. Tools lack recovery hints (e.g., 'Account not found. Call list_available_accounts() first'). Errors will not guide LLM to self-correct.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Search emails by keyword. Searches in subject, body, sender, and recipient fields. Returns matching email metadata.
Send an email using the specified account. Supports replying to emails with proper threading when in_reply_to is provided.
Destructive operations lack confirmation step. delete_emails and send_email can cause irreversible side effects but have no dry-run or confirmation mechanism.
Batch operation error reporting incomplete. delete_emails returns success/failure lists, but download_attachment and send_email (if called with multiple recipients) lack per-item granularity.