Skip to main content
Glama
mike-tih

icloud-mcp

by mike-tih

Email Search

email_search
Read-onlyIdempotent

Find specific iCloud emails by combining filters for sender, subject, date, body, and read status.

Instructions

Server-side IMAP search. All provided filters are combined with AND; at least one is required.

Returns the same fields as email_list_messages, newest first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyNoText matched against the message body (slower).
limitNoMaximum number of messages, newest first.
queryNoText matched against Subject OR From.
sinceNoOnly messages on/after this date, YYYY-MM-DD.
beforeNoOnly messages before this date, YYYY-MM-DD.
folderNoIMAP folder name. iCloud folders: INBOX, Drafts, 'Sent Messages', 'Deleted Messages', Junk, Archive (see email_list_folders).INBOX
senderNoText/address matched against From (full addresses work best).
subjectNoText matched against Subject.
recipientNoText/address matched against To or Cc.
unread_onlyNoOnly unread messages.
include_bodyNoInclude body_text (readable text, truncated). Set false for a fast header-only listing.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, open-world, and non-destructive traits. The description adds meaningful behavior: server-side execution, AND combination of filters, requirement of at least one filter, and newest-first ordering. It also references the output format via email_list_messages. This adds value beyond annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences with no redundancy. The purpose is front-loaded, followed by the key filter rule, and then the output reference. Every sentence contributes essential information, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the comprehensive schema and the existence of an output schema, the description does not need to repeat parameter or return details. It covers the search-specific behavior and references email_list_messages for output structure. It could mention pagination or default folder behavior, but those are already in the schema. The description is sufficient for correct usage in most cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema documents all 11 parameters with detailed descriptions (100% coverage). The description adds crucial interaction semantics: 'All provided filters are combined with AND; at least one is required.' This clarifies how multiple filter parameters relate and enforces a constraint not present in the schema. Since schema already covers each parameter individually, the description's added value is the cross-parameter rule, which earns a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Server-side IMAP search' and specifies the key behaviors: filters combined with AND, at least one required, and newest-first ordering. It also references email_list_messages for return fields, which distinguishes it from that sibling. This is a specific, unambiguous purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for filtered searching by stating 'Returns the same fields as email_list_messages' which hints at the similarity to a listing tool. However, it does not explicitly state 'use this when you need to filter' or contrast with alternatives like email_get_message. The guidance is clear enough for an agent to infer when to search, but lacks explicit exclusions or alternative selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.