Skip to main content
Glama
Sendmux Email Inbox API + Sending

Sendmux Email Inbox API + Sending

Official
by qubrics

Change Draft Schedule

qubrics_mailbox_control_draft_schedule
Idempotent

Reschedule or cancel a saved draft's scheduled send using expected revision and schedule version; set scheduled_for to null to cancel before sending begins.

Instructions

Reschedule or cancel a saved draft send only when the user asks. Requires mailbox.read and email.send. Pass the current expected_revision and expected_schedule_version; scheduled_for=null cancels. Cancellation fails once sending has begun.

Input Schema

NameRequiredDescriptionDefault
draftIdYesStable draft ID.
If-MatchNoCurrent draft ETag; both revision and schedule version remain required.
mailbox_idNoMailbox public ID to target when the credential grants access to more than one mailbox. Omit when the credential is scoped to exactly one mailbox.
scheduled_forYesNew future time within 30 days, or null to cancel and make the draft editable. Cancellation fails once sending has begun.
expected_revisionYesExact saved content revision.
expected_schedule_versionYesCurrent schedule version; stale requests return conflict. Repeating the last identical request returns its current result.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.17

TDQS

A4.2/5.0
Behavior4/5

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

Goes well beyond the annotations: it names the required scopes (mailbox.read, email.send), the optimistic-concurrency requirement that both expected_revision and expected_schedule_version must be current, and a real failure mode (cancellation fails once sending has begun). The annotations already establish non-read-only, idempotent, non-destructive semantics, and nothing in the description contradicts them; only the post-success behavior is left to the output schema.

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?

Four short clauses, front-loaded with the action and the user-consent gate, then preconditions, then the cancel toggle, then the failure condition. No sentence is redundant.

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?

For a mutation tool of this complexity the definition covers the essential agent-facing facts: side effect, permissions, concurrency tokens, cancel mechanism, and failure boundary. With an output schema present and full schema descriptions, nothing material is missing.

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?

Schema coverage is 100%, so baseline would be 3, but the description adds meaning the schema does not: that the revision and schedule-version values must be the *current* ones and passed as a pair, and that scheduled_for=null is the cancel switch. It does not explain the If-Match header parameter's role beyond the schema's own text.

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?

States a specific verb pair (reschedule or cancel) against a specific resource (a saved draft send / its schedule), which is far more precise than the bare name. It does not explicitly name the nearest siblings it is not (mailbox_update_draft for content edits, mailbox_send_draft for immediate sending), so an agent must infer the boundary.

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 phrase 'only when the user asks' is an explicit gating condition that tells the agent not to act proactively, which is valuable for a state-changing tool. It stops short of naming alternatives or stating when-not to use it relative to sibling tools such as update_draft or delete_draft.

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