Skip to main content
Glama
Sendmux Email Inbox API + Sending

Sendmux Email Inbox API + Sending

Official
by qubrics

Create Saved Draft

mailbox_create_draft

Save draft messages for review without sending; prepare replies, forwards, or adopt existing drafts with attachments and headers.

Instructions

Save a message for review without sending it. Requires mailbox.read and mailbox.drafts.write. Use source.action for reply, reply_all, forward or adopt; explicit content overrides prepared defaults. Adoption requires Idempotency-Key; reuse it when retrying the same create request.

Input Schema

NameRequiredDescriptionDefault
ccNoVisible copied recipients.
toNoPrimary recipients; at most 50 total across To, Cc and Bcc.
bccNoHidden copied recipients.
fromNoAuthorised sender; defaults to this inbox.
sourceNoSource for this draft. Adoption requires Idempotency-Key. Explicit content fields override prepared defaults.
subjectNoSubject; may be empty.
reply_toNoAuthorised reply addresses; defaults to this inbox.
html_bodyNoHTML body, preserved when saved.
text_bodyNoPlain-text body.
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.
attachmentsNoAttachments and inline images.
custom_headersNoCustom X-* headers. Writes reject X-SES-TENANT, X-SES-CONFIGURATION-SET and X-SES-MESSAGE-TAGS case-insensitively. On updates, omit this field to preserve saved headers, or pass {} to clear them.
Idempotency-KeyNoReuse this key when retrying the same create request.
reply_to_message_idNoMessage in this inbox to reply to; thread headers are snapshotted.

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?

The description adds real context beyond the annotations: the required mailbox.read and mailbox.drafts.write scopes, the fact that adoption needs an Idempotency-Key, and that the key should be reused on retries. That is meaningful operational disclosure for a write tool whose annotations only say readOnly=false, destructive=false and idempotent=false. It does not explain blast radius beyond 'saved, not sent', but the annotations plus scope disclosure cover most of the gap.

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?

Four tight sentences, front-loaded with the outcome ('save without sending') before the prerequisites and the source.action mechanics. No filler, though the scope and idempotency clauses are somewhat compressed into the middle and could read more cleanly as separate statements.

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 14 parameters, nested recipient/attachment objects and an output schema, this tool is complex, and the description covers the pieces an agent cannot get from structured fields: auth scopes, the adoption idempotency contract, and content-override precedence. Limits, formats and return shape are handled by the schema and output schema, so nothing critical 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 description coverage is already 100%, so the baseline is 3, but the description adds genuine semantics: explicit content fields override the defaults prepared from source.action, and the Idempotency-Key must be reused when retrying the same create. That precedence rule is not derivable from the schema alone, so it earns an increment.

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

Purpose5/5

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

The description opens with a specific verb+resource pair ('Save a message') and immediately scopes it ('for review without sending it'), which cleanly separates this tool from mailbox_send_draft, mailbox_send_message and mailbox_update_draft. An agent can pick this tool over the send path without opening any schema.

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

Usage Guidelines3/5

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

It gives conditional guidance for the source.action values (reply/reply_all/forward/adopt) and the idempotency-retry case, which implies when the tool is appropriate. However, it never states when to use this tool versus mailbox_update_draft or mailbox_send_draft, nor any when-not conditions, so the routing guidance is inferred rather than explicit.

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