mailopoly
Server Details
Your unified inbox — everything that reaches you, understood and actionable from your AI assistant.
Glama couldn't complete the latest health check. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Uptime
- 0.0% over 41 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 45 tools
Most tools have distinct purposes, but some overlap exists between search_emails and deep_search_emails, and between get_feed, get_catch_up, and other listing tools. Descriptions are detailed and help differentiate, so disambiguation is generally strong.
The majority use a consistent verb_noun pattern (e.g., create_task, list_invoices). However, 'about_mailopoly' and 'next_nudge' deviate slightly from this pattern, reducing consistency slightly.
With 45 tools, the count is excessively high for most assistants. While the domain is broad (email management), this number exceeds typical well-scoped ranges (3-15) and falls into the 'too many' category, causing potential bloat.
The tool set covers a wide range of email management tasks: account setup, sync, search, read, send, drafts, tasks, priorities, invoices, lists, and more. Minor gaps exist (e.g., managing non-email app connections), but overall it is comprehensive.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
get_connect_instructions1 field changed- changed
Output schema / properties / imap_suggestion / descriptionPrevious value: -"IMAP details + app-password steps when method=imap: provider_name, host, port, help_url, app_password_required, app_password_note, instructions. app_password_note can carry hard prerequisites (e.g. IMAP is a Premium-only feature on mail.com) — always relay it to the user when present."New value: +"IMAP details + app-password steps when method=imap: provider_name, host, port, help_url, app_password_required, app_password_note, instructions."
1 tool update
- Changed
get_connect_instructions1 field changed- changed
Output schema / properties / imap_suggestion / descriptionPrevious value: -"IMAP details + app-password steps when method=imap: provider_name, host, port, help_url, app_password_required, app_password_note, instructions."New value: +"IMAP details + app-password steps when method=imap: provider_name, host, port, help_url, app_password_required, app_password_note, instructions. app_password_note can carry hard prerequisites (e.g. IMAP is a Premium-only feature on mail.com) — always relay it to the user when present."
1 tool update
- Changed
search_emails2 fields changed- removed
Input schema / properties / accountRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Account" -} - removed
Input schema / properties / sort_orderRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Sort Order" -}
1 tool update
- Changed
search_emails1 field changed- added
Input schema / properties / accountAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Account" +}
1 tool update
- Changed
search_emails1 field changed- added
Input schema / properties / sort_orderAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Sort Order" +}
2 tool updates
- Changed
create_task2 fields changed- added
Input schema / $defsAdded value: +{ + "TaskAttendee": { + "description": "One meeting attendee for create_task(task_type='event'). email is the\nattendee's real address (required); role defaults to 'required'.", + "properties": { + "email": { + "title": "Email", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "role": { + "enum": [ + "required", + "optional" + ], + "title": "Role", + "type": "string" + } + }, + "required": [ + "email" + ], + "title": "TaskAttendee", + "type": "object" + } +} - changed
Input schema / properties / attendees / anyOfPrevious value: -[ - { - "items": {}, - "type": "array" - }, - { - "type": "null" - } -]New value: +[ + { + "items": { + "$ref": "#/$defs/TaskAttendee" + }, + "type": "array" + }, + { + "type": "null" + } +]
- Changed
resolve_priority3 fields changed- added
Input schema / $defsAdded value: +{ + "PrioritySource": { + "additionalProperties": true, + "description": "The `source` object the EA report attaches to each priorities/nudge\nitem, passed back verbatim to resolve_priority. Different item kinds\npopulate different fields (a bill has invoice ids, a reply has an\nemail_id…), so nothing is universally required — ref_id remains the\nfallback identifier. extra=\"allow\" keeps any additional keys the report\nemits (e.g. sender_name) intact through validation, since\napply_ea_item_action reads the value as a plain dict.", + "properties": { + "amount": { + "title": "Amount", + "type": "number" + }, + "currency": { + "title": "Currency", + "type": "string" + }, + "due_date": { + "title": "Due Date", + "type": "string" + }, + "email_id": { + "title": "Email Id", + "type": "string" + }, + "email_ids": { + "items": { + "type": "string" + }, + "title": "Email Ids", + "type": "array" + }, + "event_id": { + "title": "Event Id", + "type": "string" + }, + "invoice_id": { + "title": "Invoice Id", + "type": "string" + }, + "invoice_ids": { + "items": { + "type": "string" + }, + "title": "Invoice Ids", + "type": "array" + }, + "kind": { + "title": "Kind", + "type": "string" + }, + "sender_email": { + "title": "Sender Email", + "type": "string" + }, + "sender_name": { + "title": "Sender Name", + "type": "string" + }, + "subject": { + "title": "Subject", + "type": "string" + }, + "task_id": { + "title": "Task Id", + "type": "string" + }, + "thread_id": { + "title": "Thread Id", + "type": "string" + } + }, + "title": "PrioritySource", + "type": "object" + } +} - changed
Input schema / properties / source / anyOfPrevious value: -[ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "$ref": "#/$defs/PrioritySource" + }, + { + "type": "null" + } +] - removed
Input schema / properties / source / titleRemoved value: -"Source"
1 tool update
- Added
snooze_reconnect_reminder
6 tool updates
- Added
dismiss_nudge - Changed
get_email1 field changed- added
Output schema / properties / suggested_repliesAdded value: +{ + "anyOf": [ + { + "items": { + "additionalProperties": true, + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Pre-written reply drafts in the user's own voice ({short_response, content}, best first). Offer by label; send the chosen one via send_email(reply_to_email_id, body=content).", + "title": "Suggested Replies" +}
- Added
get_priorities - Added
next_nudge - Added
resolve_priority - Added
set_daily_briefing
4 tool updates
- Changed
deep_search_emails1 field changed- changed
Output schema / properties / results / descriptionPrevious value: -"Email summary objects. Common keys: email_id, subject, sender_name, sender_email, date, snippet, personal_or_ad, categories, source. Pass email_id to get_email / get_action_links."New value: +"Email summary objects. Common keys: email_id, subject, sender_name, sender_email, date, snippet, folder ('cleanbox' = genuine personal mail, 'other' = promotional), categories, source. Pass email_id to get_email / get_action_links."
- Changed
get_catch_up12 fields changed- added
Input schema / properties / filter_type / anyOfAdded value: +[ + { + "type": "string" + }, + { + "type": "null" + } +] - changed
Input schema / properties / filter_type / defaultPrevious value: -"all"New value: +null - removed
Input schema / properties / filter_type / typeRemoved value: -"string" - added
Input schema / properties / folderAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Folder" +} - added
Input schema / properties / summarizeAdded value: +{ + "default": false, + "title": "Summarize", + "type": "boolean" +} - changed
Output schema / properties / briefing / descriptionPrevious value: -"AI summary of what was missed."New value: +"Mailopoly's own written briefing — null unless summarize=true was passed (summarise sender_groups yourself)." - added
Output schema / properties / cleanbox_countAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ], + "default": null, + "description": "How many of the new emails are Cleanbox (personal).", + "title": "Cleanbox Count" +} - removed
Output schema / properties / filterRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Filter" -} - added
Output schema / properties / folderAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Which folder was covered: cleanbox | other | all.", + "title": "Folder" +} - added
Output schema / properties / other_count / descriptionAdded value: +"How many are Other (promotional)." - removed
Output schema / properties / personal_countRemoved value: -{ - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Personal Count" -} - changed
Output schema / properties / sender_groups / descriptionPrevious value: -"New emails grouped by sender, with unread counts."New value: +"New emails grouped by sender, with unread counts and per-email snippets — summarise these yourself."
- Changed
get_feed2 fields changed- added
Input schema / properties / folderAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Folder" +} - changed
Output schema / properties / results / descriptionPrevious value: -"Email summary objects. Common keys: email_id, subject, sender_name, sender_email, date, snippet, personal_or_ad, categories, source. Pass email_id to get_email / get_action_links."New value: +"Email summary objects. Common keys: email_id, subject, sender_name, sender_email, date, snippet, folder ('cleanbox' = genuine personal mail, 'other' = promotional), categories, source. Pass email_id to get_email / get_action_links."
- Changed
search_emails2 fields changed- added
Input schema / properties / folderAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Folder" +} - changed
Output schema / properties / results / descriptionPrevious value: -"Email summary objects. Common keys: email_id, subject, sender_name, sender_email, date, snippet, personal_or_ad, categories, source. Pass email_id to get_email / get_action_links."New value: +"Email summary objects. Common keys: email_id, subject, sender_name, sender_email, date, snippet, folder ('cleanbox' = genuine personal mail, 'other' = promotional), categories, source. Pass email_id to get_email / get_action_links."
1 tool update
- Added
set_language
1 tool update
- Changed
list_invoices3 fields changed- changed
Output schema / properties / summary / descriptionPrevious value: -"Totals over the full matching set: total_amount_outstanding, total_amount_paid, total_due_today/this_week/this_month."New value: +"Totals over the FULL matching set (every vendor, not just the returned page): grand_total, total_paid, total_outstanding, record_count, vendor_count, capped." - changed
Output schema / properties / total_matching / descriptionPrevious value: -"Total matching records before the page limit."New value: +"Total matching records (across all vendors). If `summary.capped` is true there may be even more." - added
Output schema / properties / vendor_breakdownAdded value: +{ + "anyOf": [ + { + "items": { + "additionalProperties": true, + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "default": null, + "description": "Per-vendor rollup over the full matching set, biggest first: [{vendor, count, total}]. Use this to answer 'which vendors' / 'anyone other than X' without paging every record.", + "title": "Vendor Breakdown" +}
1 tool update
- Changed
get_email1 field changed- changed
Output schema / properties / attachments / descriptionPrevious value: -"Attachment digests: name + type."New value: +"Attachment digests: name, type, and attachment_text (the extracted text content, when available) for both provider and @mly.life attachments. Read attachment_text for invoice/proposal details not present in the body."
1 tool update
- Added
set_timezone
1 tool update
- Added
about_mailopoly
36 tool updates
- First observed
add_email_to_list - First observed
check_email_sync - First observed
complete_task - First observed
create_email_list - First observed
create_task - First observed
create_task_rule - First observed
deep_search_emails - First observed
delete_task_rule - First observed
get_account_overview - First observed
get_action_links - First observed
get_catch_up - First observed
get_connect_instructions - First observed
get_draft - First observed
get_email - First observed
get_feed - First observed
get_my_day - First observed
get_widgets - First observed
hide_emails - First observed
list_drafts - First observed
list_email_accounts - First observed
list_email_lists - First observed
list_events - First observed
list_invoices - First observed
list_task_rules - First observed
list_tasks - First observed
mark_email_read - First observed
pause_email_account - First observed
remove_email_from_list - First observed
resume_email_account - First observed
save_draft - First observed
search_emails - First observed
send_email - First observed
snooze_task - First observed
start_email_account_sync - First observed
start_email_connection - First observed
verify_email_account
Related MCP Connectors
- alfred_OAuthai.get-alfred
Your real Gmail, Outlook and calendars, worked as you: read, draft, send, schedule, organize.
Stateful email for AI agents — read inboxes, reply in-thread, draft with approval.
Email triage tool powered by AI: classifies your inbox, finds messages that need a reply, and…
Email inboxes for AI agents: create an address, send, receive via webhook, and full-text search.
161
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceTransform your inbox into an intelligent, LLM-powered assistant that manages, organizes, and streamlines email using conversational language. Compatible with Gmail, Outlook, iCloud, Yahoo, and IMAP services through Nylas v3 API.21-
- FlicenseNot gradedqualityBmaintenanceUnified email orchestration server for Gmail and Outlook with agentic tools for sending, reading, searching, and managing emails, enabling assistant-driven email workflows.2-
- AlicenseNot gradedqualityDmaintenanceEnables unified email management across Gmail, Outlook, iCloud, and IMAP providers with tools for search, send, organize, and batch operations via natural language.419 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Gmail and Outlook inboxes through natural language, supporting email search, reading, and reply operations.-
Glama MCP Gateway
Add one secure layer between your agents and this server.