Skip to main content
Glama

Mono eSIM — Travel Connectivity for AI Agents

Universal purchase

purchase
Idempotent

Attempt a purchase for a quote_id from prepare_order using an explicitly selected buyer_mode and payment_method supported by payment_capabilities. stripe_checkout requires human/delegated confirmation, accepted terms, customer email and a customer-paid Stripe link; agent_wallet and stripe_off_session are available only when their offline-sandbox capabilities are enabled and the machine has the necessary authority or balance. This can create an order or start a payment; reuse the SAME idempotency_key on retries and never infer success before verified payment.

Input Schema

NameRequiredDescriptionDefault
langNoLanguage for names and texts (default en).
emailNo
quote_idYes
buyer_modeYes
payment_methodYes
terms_acceptedNo
idempotency_keyNo
authorization_idNoRequired for stripe_off_session; from create_card_authorization.
customer_confirmedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare openWorldHint, idempotentHint and non-destructive, but the description adds real side-effect context: an order may be created or a payment started, authority/balance must exist, and success must not be assumed before verified payment. It does not say what state the order lands in if payment fails or is abandoned, which is the main remaining behavioral gap for a payment tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the action and the quote source, then preconditions, then the retry/success caveat; nothing is redundant. The middle sentence is a long run-on stacking several conditionals, which slightly hurts scannability but not content density.

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 9-parameter, no-output-schema payment tool this covers the critical decision points: mode selection, capability gating, confirmation requirements, idempotency and verification. It is incomplete on half the payment_method enum (x402, mpp, b2b_credit) and on failure/pending return behavior, which the absent output schema would otherwise have to answer.

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 only 22%, so the description carries most of the load and does well: it ties quote_id to prepare_order, payment_method to payment_capabilities, and explains that email, terms_accepted and customer confirmation are conditional on stripe_checkout plus the idempotency_key contract. It leaves the buyer_mode values and the x402/mpp/b2b_credit methods unexplained, so three of nine parameters are unglossed.

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 ('Attempt a purchase for a quote_id') and anchors it to the producing sibling 'prepare_order'. The final clause clarifies the outcome ambiguity ('can create an order or start a payment'), which is exactly the distinction an agent needs versus create_checkout or create_card_authorization.

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 concrete preconditions per path: buyer_mode and payment_method must be explicitly selected and validated against payment_capabilities, stripe_checkout needs human/delegated confirmation, accepted terms, customer email and a customer-paid link, while agent_wallet/stripe_off_session require enabled offline-sandbox capabilities. It never states when to prefer this tool over create_checkout, so it stops short of explicit alternative routing.

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