Skip to main content
Glama
Sendmux Email Inbox API + Sending

Sendmux Email Inbox API + Sending

Official
by qubrics

Send Email

qubrics_sending_send_email

Sends one outbound email through the Sendmux sending API, supporting HTML and text bodies, CC/BCC, reply-to, custom headers, and up to 10 attachments via attachment_id references.

Instructions

Use this to send one outbound email through the sending API. For attachments, call sending_upload_attachment first for local/tiny content or sending_create_attachment_upload for delegated file PUTs, then pass attachments as attachment_id refs. Inline base64 is only for tiny generated content. Include an Idempotency-Key so retries do not create duplicate sends.

Input Schema

NameRequiredDescriptionDefault
ccNoCC recipients (subject to 50 total To, CC, and BCC recipients)
toYesPrimary recipient
bccNoBCC recipients (subject to 50 total To, CC, and BCC recipients)
fromYesSender address
subjectYesEmail subject line (max 998 chars, RFC 5322)
reply_toNoReply-To address
html_bodyYesHTML email content (max 25MB)
text_bodyNoPlain text alternative (max 25MB)
attachmentsNoFile attachments (max 10). Use attachment_id refs for uploaded files.
return_pathNoEnvelope sender for VERP support
custom_headersNoCustom X-* headers to include in the email
delivery_groupNoOne delivery group public ID or a non-empty array of up to 50 IDs
Idempotency-KeyNoOptional client-generated key to make the request idempotent for 24 hours. Replays under the same key return the cached response; a reused key with a different body returns 409 idempotency_conflict.

Output Schema

NameRequiredDescriptionDefault
resultYes

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?

The annotations already declare openWorldHint=true and idempotentHint=false, so the description earns credit for explaining how to mitigate that non-idempotency by supplying an Idempotency-Key so retries do not duplicate sends. It also discloses the prerequisite ordering for attachments, which is behavioral context not present in the schema. It says nothing about sender verification, rate limits, or quotas.

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 sentences, front-loaded with the core action, then the attachment prerequisite, then the idempotency advice. There is no filler and each sentence carries actionable information.

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?

For a 13-parameter mutation tool with an output schema, the description covers the two things an agent could most plausibly get wrong: attachment sourcing and duplicate sends on retry. Numeric limits such as 10 attachments and 50 total recipients are left to the schema, which is acceptable given full coverage there.

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 the schema already explains every parameter, making 3 the baseline. The description adds a little meaning on top by advising that attachments be passed as attachment_id refs rather than inline base64 except for tiny generated content, but it repeats rather than extends the Idempotency-Key semantics already documented in the schema.

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 opening sentence names a specific verb and resource ('send one outbound email through the sending API') and the word 'one' implicitly separates it from qubrics_sending_send_email_batch. It does not, however, explicitly distinguish this from mailbox_send_message, so the sibling differentiation is only partial.

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 concrete routing guidance for the attachment sub-workflow: use qubrics_sending_upload_attachment for local/tiny content, qubrics_sending_create_attachment_upload for delegated PUTs, and inline base64 only for tiny generated content. It stops short of saying when to prefer this tool over mailbox_send_message or the batch variant.

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