Skip to main content
Glama
Sendmux Email Inbox API + Sending

Sendmux Email Inbox API + Sending

Official
by qubrics

Wait For Message

qubrics_mailbox_wait_for_message
Read-onlyIdempotent

Waits briefly for new mail instead of manual polling, returning a matching message with attachment metadata or a clean no_message result so you can call again.

Instructions

Use this to wait briefly for new mail instead of manual polling. It polls for up to 25 seconds, returns a matching message with attachment metadata when found, or a clean no_message result so you can call again.

Input Schema

NameRequiredDescriptionDefault
qNoOptional full-text query to match.
afterNoISO 8601 lower bound for received_at. Omit to wait for messages received after this call starts.
keywordNoOptional keyword/label that the message must have, such as $seen.
subjectNoOptional subject text filter.
folder_idNoOptional folder ID filter.
from_emailNoOptional sender email address or display-name filter.
mailbox_idNoMailbox public ID when the credential can access more than one mailbox.
has_attachmentNoWhen true, wait only for messages with attachments.
timeout_secondsNoMaximum seconds to wait. Capped at 25 seconds so MCP clients do not hold a tool call open indefinitely.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.17

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and open-world, so the safety profile is covered. The description adds real context beyond that: the blocking duration, the two possible outcomes (matching message with attachment metadata vs. 'no_message'), and the implied retry pattern. It does not mention any rate limits or how default filters (e.g., omit 'after') affect the wait window, which the schema only partly covers.

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

Conciseness4/5

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

Two sentences, front-loaded with the purpose and the outcome shapes, with no filler. 'Wait briefly' and 'polls for up to 25 seconds' overlap slightly, and the total duration is stated twice across description and schema, but the redundancy is minor.

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

Completeness5/5

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

With nine all-optional, fully documented parameters, an output schema handling return values, and annotations covering safety, the description only needs to convey the blocking semantics and the two outcomes. It does that, so an agent knows what to expect and what to do on an empty result.

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%, so each of the nine parameters already has documented meaning, including the 'after' default and the 25-second cap. The description adds no filter-specific guidance (e.g., how combining 'q', 'subject', and 'keyword' behaves), so it stays at the baseline.

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 names a specific verb and resource ('wait briefly for new mail') and states the mechanism (polling up to 25 seconds), so an agent can distinguish it from plain read tools like mailbox_list_messages. It stops short of naming any sibling tool explicitly, so it is clear but not fully differentiated.

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?

It gives positive usage context ('instead of manual polling') and explains the follow-up loop after a 'no_message' result ('so you can call again'). It does not state when NOT to use it (e.g., prefer a direct read when the message already exists), so exclusions are absent.

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

Deploy Server

Other Tools