Skip to main content
Glama
Sendmux Email Inbox API + Sending

Sendmux Email Inbox API + Sending

Official
by qubrics

Read Saved Draft

qubrics_mailbox_get_draft
Read-onlyIdempotent

Retrieve a saved email draft and its current revision before editing or sending. Preserve the revision and schedule version so later changes can be applied safely.

Instructions

Read a saved draft and its current revision before editing or sending. Requires mailbox.read. Keep the revision and schedule version for later changes.

Input Schema

NameRequiredDescriptionDefault
draftIdYesStable draft ID.
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.
If-None-MatchNoReturn 304 if this draft has not changed.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.17

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and openWorld, so the safety profile is covered. The description adds genuinely new context: the mailbox.read scope requirement and the instruction to retain the returned revision/schedule version for later mutations, which hints at optimistic-concurrency semantics. It does not explain the 304 conditional behavior that the If-None-Match parameter implies.

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 short sentences, front-loaded with the action and followed by the prerequisite and the follow-up obligation. No filler, though the final clause is terse enough to be slightly cryptic about which fields to retain.

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?

With annotations, a fully documented schema and an output schema present, the definition covers the remaining agent-facing needs: auth scope and the need to preserve version tokens. Only the conditional-request/304 semantics of If-None-Match and its relationship to sibling draft tools are left implicit.

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 100%, including a description for mailbox_id and If-None-Match, so the schema carries parameter meaning and a 3 baseline applies. The description's only added parameter-adjacent signal is that the revision and schedule version must be kept for later calls, which is useful but does not directly explain how to use draftId or If-None-Match.

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?

'Read a saved draft and its current revision' states a specific verb and resource, and 'revision' distinguishes it from a plain get. It does not explicitly name the nearby siblings (list_drafts, get_draft, update_draft), but the read-before-edit framing makes the distinct role clear.

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?

'before editing or sending' gives a concrete trigger condition that ties this read to the update/send workflow. It stops short of naming alternatives such as list_drafts for finding a draftId or get_draft, so routing is implied rather than spelled out.

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