Skip to main content
Glama
Kinolian1107

phison-mail-mcp

by Kinolian1107

searchEmails

Find emails across multiple folders using keywords, date ranges, sender/recipient filters, subject, and attachment status to retrieve matching messages.

Instructions

Search for emails across multiple folders using keywords, date ranges, sender/recipient filters. Provides comprehensive email search capabilities.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNo
fromNo
endDateNoendDate must be a valid ISO 8601 datetime string. e.g. 2025-08-21T00:00:00Z
foldersNoBy default, this parameter is not given. Give the user an array of folders to search, for example ['INBOX', 'BACKUP']
subjectNo
keywordsNo
startDateNostartDate must be a valid ISO 8601 datetime string. e.g. 2025-08-21T00:00:00Z
maxResultsNo
includeBodyNo
hasAttachmentNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.9

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It says nothing about pagination behavior despite a maxResults default of 50, nothing about the cost/effect of includeBody=true, and nothing about result ordering or whether the search is read-only. Only the verb 'Search' weakly implies a non-mutating operation.

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

Conciseness3/5

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

The first sentence is well front-loaded and dense with the filter vocabulary. The trailing sentence is pure filler that repeats the purpose without adding information, dragging the structure down.

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

Completeness2/5

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

A 10-parameter tool with 0 required params, 30% schema coverage, no annotations, and no output schema needs more than two sentences. An agent cannot tell what the defaults do, what the return shape is, or how to disambiguate from listEmails.

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

Parameters3/5

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

Schema coverage is 30%, so the description must compensate. It names keywords, date ranges, and sender/recipient filters, which maps to roughly half the parameters, but omits subject, maxResults, includeBody, and hasAttachment entirely — those are undocumented in both places. Partial compensation only.

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

Purpose4/5

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

The description gives a specific verb (Search) and resource (emails) plus the filter dimensions it accepts: keywords, date ranges, sender/recipient. However, it never differentiates itself from the sibling listEmails, which an agent would reasonably confuse it with. The second sentence ('Provides comprehensive email search capabilities') is a restatement that adds nothing.

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

Usage Guidelines2/5

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

There is no guidance on when to use this versus listEmails or getEmailDetail, no mention of prerequisites, and no exclusions. The phrase 'across multiple folders' implies the scope but the agent must infer that unfiltered listing belongs to a different tool.

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