Skip to main content
Glama

Agentic Fabrication Network (AFN)

Create checkout

create_checkout

Create the order and get a hosted payment link for a chosen offer. Call this as soon as the user picks an offer + shipping speed — do NOT ask for their address first: the secure payment page collects the shipping address and email. Only pass address fields if the user already volunteered them. Returns checkout_url — give it to the user to pay; UFP places the vendor order automatically after payment.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
zipNo
cityNo
nameNoRecipient full name (only if the user provided it)
emailNoBuyer email (only if the user provided it)
phoneNo
stateNoTwo-letter US state
street1NoStreet address (only if the user provided it)
street2No
offer_idYes
return_urlNoExact URL of the page the user is on right now, IF the client application knows it (a web app embedding this tool passes its own page URL). The post-payment page shows a 'Return to <site>' button pointing here. Omit when unknown — never invent one.
billing_zipNo
coupon_codeNoCoupon code, only if the user provided one (early-adopter codes from the AFN team). Case-insensitive. The discount appears on the payment page; a 100%-off code makes the total $0 with no card required. Never invent or guess a code.
billing_cityNo
billing_nameNoBilling address, only when the buyer answered the billing question (e.g. said it differs from shipping, or a checkout UI's 'same as shipping' checkbox — then send the shipping values verbatim). Never ask for it; omit and the payment page handles billing.
billing_stateNoTwo-letter US state
billing_street1No
billing_street2No
shipping_option_idYesOne of the offer's shipping option ids

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states that the secure payment page collects the shipping address/email, that the tool returns a checkout_url, and that UFP places the vendor order automatically after payment — a clear side-effect disclosure for a mutation tool. It could mention auth/error cases, but the core behaviors are transparent and complete.

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 sentences, no wasted words. The core purpose and timing are front-loaded, followed by the address caveat, the return value, and the post-payment behavior. Every sentence earns its place and the structure is easy to scan for an 18-parameter tool.

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 complex 18-param tool with no output schema, the description ties the workflow together: when to call, what to pass, what comes back (checkout_url), and what happens after payment. It lacks a detailed shape of the response beyond the URL, but the essential integration logic an agent needs is all present. Nearly complete.

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 coverage is 50%, so the description must compensate for the uncovered half. It adds valuable guidance on the address-field philosophy ('Only pass address fields if the user already volunteered them') and implicit rules for return_url ('never invent one'). The schema itself documents the other half (name, email, coupon_code, billing_name, shipping_option_id). The description complements rather than fully compensates for the coverage gap, leaving some params (zip, city, phone, street1) to inference.

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 + outcome: 'Create the order and get a hosted payment link for a chosen offer.' It clearly distinguishes from siblings like get_order_status, list_orders, and leave_review, none of which create a checkout or issue a payment link. An agent can immediately tell what this tool does and when it applies.

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?

Explicit timing guidance is given: 'Call this as soon as the user picks an offer + shipping speed — do NOT ask for their address first.' It also states when to pass address fields ('only if the user already volunteered them'). It would earn a 5 by naming an alternative tool to use instead under certain conditions, but the workflow context it provides is concrete and actionable.

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.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool targets a distinct action in the fabrication workflow: quoting, refining, checkout, order status, reviews, etc. Even similar concepts like get_fabrication_quote and refine_quote are clearly separated by purpose (initial quote vs. modifying an existing one). Internal tools like poll_quote are explicitly marked and never confused with user-facing actions.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (create_checkout, get_fabrication_quote, refine_quote, etc.). The verbs are specific and predictable (create, get, list, refine, reply), making the API easy to navigate.

Tool Count5/5

With 10 tools, the server provides a focused but complete set for its purpose—ordering and managing physical fabrications. No tool seems superfluous, and each covers a necessary step in the user journey. This is within the ideal range of 3-15 tools.

Completeness4/5

The tool surface covers the full lifecycle: quoting, refining, checkout, order tracking, reviews, and vendor communication. Minor gaps exist (e.g., no explicit cancel or return flow), but these are likely handled outside the MCP or via the hosted platform. The main workflows are all supported without dead ends.

Resources