Skip to main content
Glama

Preview postcard mailing

spur_preview_postcard_campaign
Read-only

Required step before mailing postcards. Renders the postcard with the first recipient's real data, checks which owners have mailing addresses, estimates the cost from the user's plan, and returns a confirmation_token.

Show the preview, then ask the user to approve. Only after they approve, call spur_send_postcards with the token (the widget's Send button does the same). The token expires in 30 minutes and only covers this exact template, recipient set, return address and size.

Input Schema

NameRequiredDescriptionDefault
sizeNoDefaults to the template's size
owner_idsYesOwners to mail (spur_find_owners)
template_idYesPostcard template id (UUID from a Spur list/search tool)
return_address_idNoDefaults to the user's default return address

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare the read-only and non-destructive profile, and the description adds critical workflow behavior: token generation, 30-minute expiry, exact scope binding to template/recipient set/return address/size, and the approval gate before sending. These details materially affect correct invocation and are not present in the annotations.

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?

The description is front-loaded with the core requirement and purpose, then states the approval workflow and token constraints without wasted filler. Every sentence adds operational value.

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?

Given the lack of an output schema, the description still explains what the tool returns (a confirmation_token) and what the preview includes. It also covers the required approval workflow and token lifecycle, which are the non-obvious pieces an agent needs to call this tool correctly.

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 parameter documentation is already strong. The description adds useful cross-parameter meaning by explaining that the confirmation_token is scoped to the exact template, recipient set, return address, and size, which helps an agent understand how the parameters constrain the downstream send call.

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 states a specific verb and resource: preview a postcard mailing campaign. It also enumerates concrete actions (render with real recipient data, check addresses, estimate cost, return a confirmation_token), clearly distinguishing it from spur_preview_postcard_template and spur_send_postcards.

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

Usage Guidelines5/5

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

It explicitly says this is a required step before mailing, instructs the agent to show the preview and ask for approval, and names the exact follow-up tool spur_send_postcards with the token. It even notes the widget's Send button performs the same approval path.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources