Skip to main content
Glama

AgentMade Print on Demand

Get a delivered price quote

quote

Price printed items delivered to one destination. Returns quote_id, the total that the payer pays (products, shipping and VAT where AgentMade collects it), what is not included, the delivery estimate and the expiry. Needs artwork_id values from validate_artwork. Charges nothing. For a destination where orders are not open, the quote is for information only.

Input Schema

NameRequiredDescriptionDefault
buyerNoOnly for a company purchase with an invoice. Business checkout is not open yet: the quote charges destination VAT.
itemsYes
speedNoShipping speed. Only standard is offered now; express returns a note and a standard quote.standard
purposeNoWhat the order is for. Set it only if the user already said it. Do not ask for it.
ship_toYesDestination. country_code is required; postal_code and state_code improve shipping accuracy.
currencyNoISO 4217 currency of the payer, e.g. "USD". Optional. The quote states the currency that it uses.
deliver_byNoDate by which the parcel should arrive, e.g. "2026-12-20". The quote is never refused because of it: if the estimate is later, the quote says so.
preferenceNoHow AgentMade picks the manufacturing route: fewest_packages (default: fewest parcels, then best price among the fastest routes), cheapest, or fastest.fewest_packages

Output Schema

NameRequiredDescriptionDefault
taxYes
itemsYes
notesYesThings to tell the user before purchase.
statusYes
totalsYestotal_minor is the full amount that the payer pays. Show total_formatted to the user. products_minor and shipping_minor are before VAT; tax_minor is the VAT included in the total, or 0 when tax is not collected.
ship_toYes
currencyYes
packagesYes
quote_idYesUse in purchase before expires_at.
shippingYes
next_stepYesWhat the agent should do next, in plain language.
expires_atYes
assumptionsYes
package_countYes
purchase_openYesFalse when this destination does not take orders yet or the quote expired. Then do not call purchase.
delivery_estimate_datesYesCalendar dates (YYYY-MM-DD) for the delivery estimate. Tell the user these dates.
delivery_estimate_business_daysYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations declare non-read-only, non-destructive and non-idempotent, and the description adds genuinely non-obvious behavior: it charges nothing, the quote expires, and it degrades to information-only for closed destinations. It does not cover rate limits or whether expired quotes are reusable, so it falls short of a 5.

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?

Five short sentences, each load-bearing (scope, return fields, prerequisite, no charge, closed-destination caveat), with the core purpose and the 'charges nothing' reassurance front-loaded.

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?

An output schema exists and the description still usefully names the key returned fields, plus the no-charge and expiry semantics an agent needs to set user expectations. For an 8-param nested tool with enums, this is close to complete; only the ordering relationship with purchase is 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 description coverage is 88%, with detailed inline docs for items, artwork, ship_to and each enum, so the schema already carries the parameter burden. The description only re-states the artwork_id -> validate_artwork linkage and the VAT-collection nuance, adding little that the schema does not.

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?

States a specific verb+resource ('Price printed items delivered to one destination') and immediately distinguishes itself from the purchase sibling with 'Charges nothing'. The scope (single destination, delivered pricing) is unambiguous.

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?

Gives a clear prerequisite workflow ('Needs artwork_id values from validate_artwork'), which routes the agent to the correct upstream sibling. It also carves out the informational-only case when orders aren't open, but never explicitly says to call this before purchase, leaving the primary sequencing to inference.

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.