Skip to main content
Glama

varioroam eSIM configurator

Recommend a configuration

recommend_config
Read-onlyIdempotent

Use when the customer describes a trip instead of a size: country (or up to 5), days and how they use data (usage light / normal / heavy, or gb_per_day). Sizes the data pool from the data guide and returns three server-quoted configurations per country — exact, comfortable (×1.5) and generous (×2) — each with its price, networks, a one-line reason and its buy_url, plus trip totals and an optional budget check. Prices are the same as quote_esim. Give destination (one country) or destinations (several) — one of the two is required; a call without a country fails with invalid_argument.

Input Schema

NameRequiredDescriptionDefault
daysYesDays of the trip (per country for a multi-country trip; 1–90).
usageNolight ≈ 0.5 GB/day, normal ≈ 1.5 GB/day (default), heavy ≈ 4 GB/day.
bucketNoOptional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language.
budgetNoOptional budget for the whole trip in the quoted currency; options above it are marked.
currencyNo
languageNoISO language of the conversation, e.g. en, de, ja. Localizes country names and sets the language/currency of links and prices.
networksNoOptional: operator names (or codes) from get_networks to include. Omit = the cheapest network of the country. The dearest included network sets the data price and every network beyond the first adds a small fee.
gb_per_dayNoOptional: the customer's own estimate in GB per day (wins over usage).
destinationNoCountry in ANY language or its ISO code, e.g. "Japan", "Japon", "jp". Map a city to its country first. One country per eSIM. Required unless destinations is given.
per_countryNoOptional days per country for a multi-country trip.
destinationsNoSeveral countries (max 5), any language or ISO codes. Use instead of destination for a multi-country trip. Required unless destination is given.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / destination / description
      Previous value: -"Country in ANY language or its ISO code, e.g. \"Japan\", \"Japon\", \"jp\". Map a city to its country first. One country per eSIM."New value: +"Country in ANY language or its ISO code, e.g. \"Japan\", \"Japon\", \"jp\". Map a city to its country first. One country per eSIM. Required unless destinations is given."
    • changedInput schema / properties / destinations / description
      Previous value: -"Several countries (max 5), any language or ISO codes. Use instead of destination for a multi-country trip."New value: +"Several countries (max 5), any language or ISO codes. Use instead of destination for a multi-country trip. Required unless destination is given."
  2. Added

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses the return shape (three tiers with ×1.5 and ×2 multipliers, each with price, networks, reason, buy_url), trip totals, an optional budget check, and the error behavior for a missing country. It also establishes pricing parity with quote_esim, which an agent needs for consistency of answers.

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 in the first clause, and the paragraph is dense with useful detail rather than filler. It is a single long run-on sentence-heavy block, however, so the return-shape and error details are harder to scan than a short structured breakdown would be.

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 an 11-parameter tool with no output schema, the description covers the trigger, required inputs, the three-tier output, totals, budget check, pricing parity, and a failure mode — everything an agent needs to select and call it correctly. Nothing material is left unstated.

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 already 91%, so the baseline is 3, but the description adds meaning the schema lacks: the either/or requirement between destination and destinations (the schema marks only days as required), the gb_per_day-over-usage precedence, and the budget marking behavior. The remaining parameter detail is left to 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?

The description states a specific verb and resource — it sizes a data pool from the data guide and returns three server-quoted configurations per country — and frames the trigger precisely ('when the customer describes a trip instead of a size'). It is distinguishable from siblings like quote_esim (pricing parity noted) and get_networks (referenced for operator names).

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?

It gives clear context ('country (or up to 5), days and how they use data') and explicitly states the required-input constraint ('one of the two is required; a call without a country fails with invalid_argument'). The contrast 'instead of a size' implicitly routes to the sibling that handles explicit sizes, but no alternative is named outright, so this falls short of a full when/when-not with named alternatives.

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