Skip to main content
Glama

io_list_mail

Read-only

List and filter iOffice mail items such as packages and letters with pagination, search, status, date, building, and recipient filters.

Instructions

List iOffice mail items (packages and letters). Supports filtering and pagination.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
viewNoResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact strips image/avatar URLs from the response; "full" returns iOffice's payload untouched. No field projection: this server has no verified record of which iOffice fields matter, and inventing one would risk dropping a field a caller needs.
limitNoMax results (default 50, max 100)
searchNoFilter by recipient name, tracking number, or sender
statusNoFilter by status (e.g. received, delivered, returned)
endDateNoFilter mail received on or before this date (ISO 8601)
orderByNoProperty to sort by (default: id)
startAtNoPagination offset (default 0)
startDateNoFilter mail received on or after this date (ISO 8601)
buildingIdNoFilter by building ID
orderByTypeNoSort direction (default: asc)
recipientIdNoFilter by recipient user ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed12 schema fields changedv3.2.6
    • addedInput schema / properties / buildingId / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / buildingId / maximum
      Added value: +9007199254740991
    • changedInput schema / properties / buildingId / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / limit / maximum
      Added value: +100
    • addedInput schema / properties / limit / minimum
      Added value: +1
    • changedInput schema / properties / limit / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / recipientId / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / recipientId / maximum
      Added value: +9007199254740991
    • changedInput schema / properties / recipientId / type
      Previous value: -"number"New value: +"integer"
    • addedInput schema / properties / startAt / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / startAt / minimum
      Added value: +0
    • changedInput schema / properties / startAt / type
      Previous value: -"number"New value: +"integer"
  2. First observedv3.2.1

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description adds nothing behavioral on top of that — no pagination limits, no result-set shape, no note on how the default compact view affects output. It only adds the scope detail "packages and letters," which is minimal added value.

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?

Two sentences, no filler, with the resource and scope front-loaded before the capability note. Nothing needs to be trimmed.

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

Completeness3/5

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

For a parameter-rich (11 params) read tool with no output schema, the description is complete enough to call it but offers no guidance on the large filter surface. The schema covers each parameter, so this is adequate rather than deficient, but it doesn't help an agent understand the response it will get.

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 description coverage is 100% across all 11 parameters (including detailed enum descriptions for view and orderByType), so the schema carries the full semantic load. The description contributes no additional meaning beyond what the schema documents — the baseline 3 for high coverage applies.

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 and resource ("List iOffice mail items") and narrows the scope to packages and letters, which cleanly separates it from io_get_mail and the mutation siblings (io_deliver_mail, io_return_mail). It does not explicitly name a sibling to defer to, so it falls short of a 5.

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?

"Supports filtering and pagination" merely restates capability rather than saying when to use this list tool versus io_get_mail for a single item. There are no exclusions, prerequisites, or routing conditions of any kind.

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