Skip to main content
Glama

Issue a formal quote

create_instant_quote

Issue a real, numbered Promotion Pros quote for a configuration priced with quote_price, and email it to the buyer. Returns the quote number, the reconciled price breakdown, a PDF, a link to the quote page and a link that takes the buyer straight to payment. Requires the buyer's full name, work email and phone number — ask for them, and confirm the configuration and the quantity, before calling this. This writes: it creates an order record and sends mail, and calling it twice issues two quotes to the same person. The price is recomputed live by promotionpros.com, so it can differ slightly from quote_price's snapshot; the numbers returned here are the quoted ones. Shipping and tax are not in the quote until the buyer adds a delivery address on the quote page.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
rushNo
colorNoProduct color name, from get_product_options.
emailYesThe buyer's work email. The quote is sent here, so confirm it before calling.
phoneYesA phone number to reach the buyer on. Required by the quote desk.
sizesNoPer-size quantities for apparel; replaces quantity.
companyNo
productYesIdentify the product by exactly one of slug, id or sku.
quantityNoTotal pieces. Below the method's minimum, the quote is issued at the minimum.
full_nameYesThe buyer's full name, as they gave it.
imprint_colorsNo
imprint_methodNoDecoration method name, from get_imprint_options.
destination_stateNoWhere it ships to, for the arrival estimate recorded on the quote: a US state code ("IL") or name. Omit if unknown.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the annotations, the description explicitly discloses side effects: it creates an order record, sends mail, and is not idempotent ('calling it twice issues two quotes to the same person'). It also reveals that the price is recomputed live and may differ from quote_price, and that shipping/tax are excluded until a delivery address is added. This adds real behavioral context beyond readOnlyHint/idempotentHint.

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 dense but every sentence carries information: purpose, return values, prerequisites, side effects, price behavior, and shipping/tax caveat. The critical purpose and outputs are front-loaded, making it easy for an agent to skim the essentials.

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 no output schema, the description compensates by enumerating the return values. It also covers the essential call context: required buyer details, confirmation step, non-idempotence, live pricing divergence, and the shipping/tax limitation. For a 12-parameter mutating tool, this is a well-rounded and complete description.

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 75%, so most parameters are already documented in the schema. The description reinforces that full_name, email, and phone are required buyer details and that configuration/quantity should be confirmed, but it does not add much new meaning about individual parameter formats or relationships beyond what the schema already provides.

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: it issues a real, numbered Promotion Pros quote and emails it to the buyer. It also names the return artifacts (quote number, price breakdown, PDF, quote page link, payment link), which makes the tool's purpose concrete and distinguishes it from price-estimation siblings like quote_price.

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?

The description gives clear before-call requirements: ask for the buyer's full name, work email, and phone, and confirm the configuration and quantity. It also distinguishes this from quote_price by warning that the live price can differ from the snapshot. However, it does not explicitly say 'use quote_price if you only need a preliminary estimate' or name other sibling alternatives, so it stops short of full when-not-to-use guidance.

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