Skip to main content
Glama

variotrip route eSIM configurator

Start secure checkout

start_checkout
Read-onlyIdempotent

Use only once the customer has decided to buy ("I'll take it", "how do I buy?"): the checkout handoff for one route (same input as quote_route). Returns the buy_url to give the customer, the final price and a ready-to-send checkout block (next_step, payment_methods, delivery) — on the page the route builder shows exactly this route; they press the buy button (buy_button, e.g. "Get it" in English) and pay securely. No account needed; the eSIM is delivered on screen and by e-mail right after payment. No in-chat order tracking, no discount codes. For prices while the customer is still comparing, use quote_route.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "route": "<route>",
      "days": "<days>"
    },
    "name": "start_checkout"
  }
}

Input Schema

NameRequiredDescriptionDefault
gbNoThe data pool for the WHOLE route in whole GB (1–100), shared by every country. Omit = sized for normal use (1.5 GB × days). Not sure? Call recommend_config.
daysYesTrip length in days (1–90) for the whole route, counted from the first connection anywhere on the route.
routeYesThe countries of the trip in any order (1–8, each once).
bucketNoOptional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language.
currencyNoOptional ISO 4217 override for prices.
languageNoISO language of the conversation, e.g. en, de, ja. Localizes country names and sets the language/currency of links and prices.

Output Schema

NameRequiredDescriptionDefault
daysNoTrip length, counted from the first connection anywhere on the route.
noteNoPresent when something about the request had to be adjusted — read it to the customer.
priceYesFULL price of this route in currency — the amount paid. Not per day, per GB or per country.
routeNoThe countries on the eSIM in any order with the networks of each.
topupNoHow the customer adds data, days or a country later (not through the tools).
buy_urlYesThe route builder pre-set to exactly this route. Use verbatim.
data_gbNoONE data pool for every country on the route (whole GB), used wherever the customer is.
hotspotNo
messageNoA ready-to-send line for the customer.
currencyYes
deliveryNoHow and when the eSIM arrives.
countriesNo
next_stepYesWhat the customer does now: open buy_url, press "Get it", pay.
buy_buttonNoThe label of the buy button on the page, in the language of the customer: name it exactly so.
price_basisNo
not_availableNoRequested countries variotrip cannot add (left out of the quote).
price_is_finalNo
payment_methodsNo
activation_triggerNofirst_connection (anywhere on the route)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / route / description
      Previous value: -"The countries of the trip in travel order (1–8, each once)."New value: +"The countries of the trip in any order (1–8, each once)."
    • changedOutput schema / properties / route / description
      Previous value: -"The countries on the eSIM in travel order with the networks of each."New value: +"The countries on the eSIM in any order with the networks of each."
  2. Changed1 schema field changed
    • addedOutput schema / properties / buy_button
      Added value: +{
      +  "description": "The label of the buy button on the page, in the language of the customer: name it exactly so.",
      +  "type": "string"
      +}
  3. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnly/idempotent/openWorld, but the description adds the real behavioral picture: what the customer sees on the page, that the buy button label is localized, that no account is needed, and that the eSIM arrives on screen and by e-mail after payment. It also pre-answers the follow-up question an agent would have (can I track the order in chat? no). Nothing here contradicts readOnlyHint — the tool builds a link, not an order.

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?

The trigger condition is front-loaded and the exclusion is saved for last, which is the right order. It is dense but nearly every clause carries information; the parenthetical buy-button example and the list of returned artifacts are load-bearing rather than filler.

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?

For a handoff tool with 6 parameters, a nested route array, and an output schema, the description covers the trigger, the alternative, the returned artifacts, and the post-payment flow. An agent has everything it needs to decide when to call this and what to tell the customer afterwards.

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 100% and the parameter descriptions are already rich (GB sizing rule, days counted from first connection, any-language country names). The description's only added parameter information is "same input as quote_route", which is a useful signal but not a substitute for detail the schema already supplies. Baseline 3 is appropriate.

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 concrete verb and resource — "the checkout handoff for one route" — and immediately names what it produces (buy_url, final price, ready-to-send checkout block). It explicitly separates itself from the sibling quote_route, so an agent can pick between them without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a precise triggering condition ("Use only once the customer has decided to buy") with concrete customer utterances, and names the alternative for the other case ("For prices while the customer is still comparing, use quote_route"). Negative scope is also stated: no in-chat order tracking, no discount codes.

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