Skip to main content
Glama

create_order

Destructive

Create the real order (requires confirm_token from validate_order, after user approval). Returns the payment wallet address, exact crypto amount, 30-minute expiry, and an order-status URL. The purchased code/QR is emailed by Cryptorefills to the buyer — it is never returned here.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
full_nameNoBuyer full legal name — only if a previous attempt returned FULLNAME_MISSING
confirm_tokenYesOne-time token returned by validate_order (valid 10 minutes)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
coinNo
errorNoPresent on failure: KYC_MISSING | FULLNAME_MISSING | PHONE_MISSING | CONFIRM_TOKEN_*
stateNoCREATED | WAITING_FOR_PAYMENT | PARTIAL | COMPLETED | CANCELED | EXPIRED
qr_urlNoQR code PNG of the address
kyc_urlNoHosted verification link when error=KYC_MISSING
networkNoExact network — funds sent elsewhere are lost
pay_amountNoEXACT amount to send
status_urlNoLive order-status page
payment_urlNoPayment page with QR
instructionsNo
status_tokenNo
network_labelNo
pay_to_addressNoWallet address to send funds to
external_order_idNo
payment_expires_atNoISO timestamp; 30-minute window

TDQS

A4.5/5.0
Behavior5/5

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

Goes beyond the annotations by disclosing the actual side-effect boundary: the purchased code/QR is emailed and 'never returned here'. It also reveals the wallet address, exact crypto amount, and 30-minute expiry, giving the agent realistic expectations about the result of invoking this mutation.

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?

Three dense sentences with no filler: action and precondition first, then return values, then the email caveat. Each sentence earns its place and is front-loaded with the most important information.

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 output schema already captures return values, the description adds the critical non-schema context: email delivery, non-return of code/QR, and the approval sequence. It is complete for an agent deciding whether and how to call this tool.

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%, and the description largely restates what the schema already says about confirm_token and full_name. It reinforces that confirm_token is one-time and originates from validate_order, but adds little new meaning beyond the schema.

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 and resource: 'Create the real order', clearly distinguishing from validate_order by requiring confirm_token and 'after user approval'. The description also specifies what it returns, so an agent can select it unambiguously.

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?

Explicitly establishes the precondition: confirm_token comes from validate_order and user approval must already be obtained. It does not name an alternative like purchase_wizard, but the sequence is clear enough to route the agent correctly.

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.2/5.0
Disambiguation4/5

Most tools have clear distinct purposes: listing currencies, payment methods, prices, brands, eSIM plans, products, searching, validating, creating, and checking order status. However, potential confusion between list_esim_plans and list_products for eSIM purchases, and search_products overlapping with list_brands/list_products, creates slight ambiguity. purchase_wizard serves as a fallback but is clearly labeled.

Naming Consistency4/5

Tools follow a consistent verb_noun pattern: get_currencies, get_order_status, get_payment_methods, get_price, list_brands, list_esim_plans, list_products, validate_order, create_order, search_products. 'purchase_wizard' deviates slightly as a noun phrase rather than verb_noun, but it's a distinct standalone tool.

Tool Count5/5

With 11 tools covering the full purchase lifecycle (browse, search, price, validate, create, status) plus payment configuration, the count is well-scoped for a payment/order platform. Each tool serves a necessary function without redundancy.

Completeness5/5

The tool surface is comprehensive: listing brands/products/eSIM plans, searching, getting prices and methods, validating and creating orders, and checking status. The flow from validate_order → create_order → get_order_status is complete, with fallback purchase_wizard covering widget-less scenarios. No major gaps.

Resources