Skip to main content
Glama

Server Details

Travel eSIMs: unlimited data, pick your days, top up existing eSIMs, card checkout, no API key.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
kangih90/hungry-esim-mcp
GitHub Stars
0

Available Tools

10 tools
check_destination_coverageCheck destination coverageA
Read-only
Inspect

Check whether we cover a destination before choosing a plan — answers "do you work in X?", "can I get mobile data / a SIM card in X?", "is X supported?". Returns yes/no, how many plans cover it, and the cheapest unlimited and fixed-data plan as examples. Use search_esim_plans or find_cheapest_plan for the full list.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryYesISO 3166-1 alpha-2 country code of the destination, e.g. 'JP', 'US'
currencyNoISO currency for prices, default the store currency

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false. The description adds valuable context: returns yes/no plus counts and examples, and implies it's a quick check rather than exhaustive. No contradictions. Could mention rate limits or auth scope, but still strong.

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?

Two concise sentences with every part earning its place. Front-loaded with the primary action and examples, followed by referral to siblings. No redundant or filler text.

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 simple read-only tool with 2 parameters and no output schema, the description completely addresses what the agent needs: purpose, return values, and guidance on when to use alternatives. No gaps given the context signals.

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% with clear descriptions as ISO codes. The description reinforces the country parameter via examples but adds no new details beyond schema. Baseline 3 is appropriate since schema already fully documents parameters.

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 uses specific verb+resource ('Check whether we cover a destination') and provides example queries, making the purpose immediately clear. It also distinguishes from sibling tools by mentioning alternatives for full lists.

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?

Explicitly states when to use this tool ('before choosing a plan') and directs to alternatives ('Use search_esim_plans or find_cheapest_plan for the full list'). Provides concrete example questions for typical use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_checkoutCreate eSIM checkout linkAInspect

Buy the chosen eSIM data plan: builds a cart and returns a checkout URL the traveller opens to pay by credit card on hungry-esim.com — no crypto wallet and no API key needed. Use once a plan is picked. Does NOT charge — the user completes payment on the website. For unlimited plans, period_num (how many days of data the traveller wants) is required. If the customer is signed in, the order is linked to their account automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of eSIMs, default 1
emailNoGuest email — prefills checkout so it skips the details step. Ignored when the customer is signed in (their account email is used). Never determines which account the order belongs to.
countryYesCustomer's CHECKOUT country (ISO alpha-2) — sets checkout region/currency and URL locale. NOT the eSIM's coverage country. If the store doesn't serve it, the store's default region is used.
period_numNoDays for unlimited plans (1-30). Required for unlimited, ignored otherwise.
variant_idYesVariant id from search_esim_plans

TDQS

A4.4/5.0
Behavior5/5

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

Annotations are all false (no readOnly, no destructive), so the description carries the burden. It discloses that the tool does NOT charge, payment happens on the website, and signed-in customers get orders auto-linked to their account—beyond what annotations provide.

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?

Five sentences, each with a distinct purpose: purpose, timing, no-charge note, unlimited plan condition, and account linking. Front-loaded with the main action, no fluff, though slightly longer than strictly necessary.

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?

Covers core workflow: input (chosen plan), output (checkout URL), payment responsibility, special case for unlimited plans, and account/auth behavior. No output schema exists, but the description adequately fills gaps for a medium-complexity 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?

Input schema has 100% coverage with rich descriptions (e.g., country as CHECKOUT country, variant_id source). The description reinforces period_num for unlimited plans but adds no new parameter detail beyond the schema, so 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?

The description uses a specific verb ('Buy') and states it 'builds a cart and returns a checkout URL' for eSIM plans. It clearly differentiates itself from sibling tools like search_esim_plans and get_order_status by focusing on the checkout creation step.

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?

Provides explicit timing with 'Use once a plan is picked' and notes period_num is required for unlimited plans. It also mentions no crypto wallet/API key needed, but does not explicitly name alternative tools or when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_cheapest_planFind the cheapest eSIM planA
Read-only
Inspect

Find the lowest-priced eSIM data plan for a destination — for "what's the cheapest", "budget option", "cheapest SIM / data plan for X". Pass days (trip length) to rank by what the traveller actually pays for the whole trip: unlimited plans are priced per day with a multi-day discount, fixed-data plans by their sticker price, and plans that expire before the trip ends are dropped. Without days it ranks by daily rate. Returns up to 3 options with variant_id for create_checkout.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoTrip length in days. When given, plans are ranked by total trip cost.
limitNoHow many options to return, default 3
countryYesISO 3166-1 alpha-2 country code of the destination, e.g. 'JP', 'US'
currencyNoISO currency for prices, default the store currency
min_data_gbNoMinimum data in GB (applies to fixed-data plans; unlimited always qualifies)

TDQS

A4.6/5.0
Behavior5/5

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

The description provides rich behavioral details beyond the readOnlyHint annotation: it explains ranking by total trip cost vs daily rate, dropping plans expiring before trip end, and what 'unlimited always qualifies' means for min_data_gb. This fully informs the agent of the tool's internal logic.

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?

The description is a single, front-loaded paragraph of four sentences. Each sentence adds value: purpose, usage trigger, ranking behavior conditional on 'days', and output details. No wasted words.

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?

With 5 parameters and no output schema, the description covers return structure (up to 3 options with variant_id) and edge cases (expired plans dropped). It could mention default currency behavior, but overall it is quite complete for the tool's complexity.

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?

Although schema description coverage is 100%, the description adds meaningful context: how 'days' affects ranking, that 'limit' defaults to 3, and how 'min_data_gb' applies only to fixed-data plans. This goes beyond the raw schema definitions.

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 clearly states it finds the lowest-priced eSIM data plan for a destination, with specific usage examples like 'what's the cheapest' and 'budget option'. It distinguishes from sibling tools like search_esim_plans by focusing on price minimization and ranking logic.

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?

The description explains when to use the tool (budget queries) and how the 'days' parameter changes ranking behavior. It does not explicitly state when not to use it or suggest alternatives, but the context is clear enough for an agent to infer appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_order_statusGet eSIM order statusA
Read-only
Inspect

Look up an eSIM order and return its status plus the SIM install details: install link, LPA activation code, QR image URL, and ICCID. Use for "where is my eSIM", "resend my QR code", or "did my order go through" when an order number is known. Signed-in customers can look up their own orders by number without an email. Otherwise, a short order number MUST be paired with the email used for the order — the eSIM install details are only returned to the buyer.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoEmail used for the order. Required when 'order' is a short order number and the customer is not signed in.
orderYesOrder number (e.g. '32') or Medusa order id (order_01K...) from the confirmation email

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint: true, so the description's statements about read behavior are not adding new behavioral transparency. However, the description adds valuable context about authorization constraints (install details returned only to buyer, email required when not signed in) that goes beyond annotations. This is borderline 5 but lacks explicit mention of what happens in error cases (e.g., wrong email).

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 sentences, each adds distinct value: first explains the output, second gives typical use cases, third explains authentication requirements. No wasted words—every sentence earns its place.

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?

Given the tool has only 2 parameters, 100% schema coverage, no output schema, and annotations, the description is largely complete. It explains the input constraints and authorization well. Slight gap: doesn't explain what happens if an invalid order number is provided or how the agent should handle missing install details for orders that haven't shipped yet, but for a simple lookup tool this is adequate.

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 description coverage is 100% for both parameters, so baseline is 3. The description adds significant value by explaining the relationship between parameters: the 'email' is required when 'order' is a short number and customer is not signed in, which clarifies the schema's conditional requirement beyond the basic descriptions.

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 clearly states the verb ('look up'), the resource ('eSIM order'), and the specific output ('status plus SIM install details'). It distinguishes the tool from siblings like 'my_orders' by explicitly mentioning the return of install details for a single order given an order number.

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?

The description provides explicit usage context: it's for queries like 'where is my eSIM', 'resend my QR code', or 'did my order go through'. It also gives clear when-not-to-use guidance by specifying that install details are only returned to the buyer, and explains the required pairing of short order number with email versus signed-in customers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_plan_detailsGet eSIM plan detailsA
Read-only
Inspect

Get everything about one eSIM data plan: which countries the SIM roams in, data volume, validity in days, speed and fair-use throttling, and price. Use after search_esim_plans or find_cheapest_plan when the traveller asks what exactly a plan includes before buying.

ParametersJSON Schema
NameRequiredDescriptionDefault
currencyNoISO currency, default USD
variant_idYesVariant id from search_esim_plans

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds value by listing typical return fields (countries, data volume, etc.) but does not go into detail about edge cases (e.g., what happens if variant_id is invalid or if a plan has no throttling). For a read operation with good annotations, this is adequate but not exceptional.

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?

The description is exactly two sentences: the first lists what the tool returns, the second gives precise usage context. No redundant words, no padding. Every sentence is essential and front-loaded.

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?

Given that the tool has 2 parameters with full schema coverage, a readOnlyHint annotation, and no output schema, the description covers purpose, usage guidance, and key return fields. It is missing a complete enumeration of all fields (e.g., does it return the plan name? provider?), but the listed fields cover the most critical aspects. Overall, the description is nearly complete for the tool's simplicity.

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%; both parameters have clear descriptions in the schema (currency: ISO currency default USD; variant_id: from search_esim_plans). The tool description adds no new information about parameters beyond the schema. Baseline score of 3 is appropriate because the schema already carries the semantic load.

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 uses a specific verb 'Get' and clearly identifies the resource as 'one eSIM data plan'. It enumerates the key details returned (countries, data volume, validity, speed, throttling, price), which distinguishes this tool from siblings like search_esim_plans (list/search) and find_cheapest_plan (price comparison). The purpose is unambiguous and well-scoped.

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?

The description explicitly states when to use: 'Use after search_esim_plans or find_cheapest_plan when the traveller asks what exactly a plan includes before buying.' This provides clear workflow context. It does not mention when not to use or list alternative tools explicitly, but the workflow implication is strong enough to guide correct invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_esim_topupsList eSIM top-up optionsA
Read-only
Inspect

List the data top-up (recharge / refill) packages that can be added to an eSIM the customer already owns. Use when the traveller ran out of mobile data or wants more days on a SIM they already bought — topping up reuses the installed SIM, so no new QR code is needed. Pass the ICCID from my_esims. Returns package_code values to pass to topup_esim.

ParametersJSON Schema
NameRequiredDescriptionDefault
iccidYesICCID of the eSIM, from my_esims

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, which the description aligns with by stating it's a listing operation. The description adds value by noting that topping up reuses the installed SIM and no new QR code is needed, which is helpful behavioral context beyond the annotation.

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 concise sentences, each serving a purpose: purpose, use case, and integration. No wasted words, front-loaded with the action.

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?

The tool has a single parameter and no output schema. The description fully explains the input source, the purpose of the output (package_code), and the relationship to other tools. Nothing missing for a straightforward list 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 schema already describes the iccid parameter as 'ICCID of the eSIM, from my_esims'. The tool description repeats the source guidance ('Pass the ICCID from my_esims') but does not add new semantic meaning beyond the schema. 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?

The description clearly states the tool lists data top-up packages for an eSIM, using specific verbs and resource. It distinguishes from sibling tools like topup_esim by focusing on listing rather than purchasing.

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?

Explicitly says to use when the traveler needs more data or days, instructs to pass the ICCID from my_esims, and explains that the output package_code values go to topup_esim. This provides clear when-to-use and integration context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

my_esimsMy eSIMsA
Read-only
Inspect

List the SIM cards (eSIMs) already on the signed-in Hungry eSIM account: ICCID, status, data package, expiry, and install link. Use for "my eSIM", "my SIM card", "how much data do I have left", or before topping up a SIM the traveller already owns. Requires connecting the Hungry eSIM account (OAuth) — no API key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already mark the tool as read-only (readOnlyHint=true). The description adds valuable context beyond annotations by specifying the OAuth authentication requirement and listing the returned data fields. No contradictory information is present.

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?

The description is concise at two sentences. The first sentence immediately states the core purpose and return fields; the second adds usage guidance and prerequisites. Every sentence earns its place with no fluff.

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 simple, parameterless, read-only tool, the description covers purpose, usage scenarios, returned fields, and authentication. Minor gaps: it doesn't explicitly state that the result is an array of objects or describe error handling, but these are not critical given the simplicity.

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?

The tool has zero parameters, so the input schema provides complete coverage (100%). Per the guidelines, 0 parameters earns a baseline of 4. The description does not need to add parameter semantics, and it does not introduce any irrelevant information.

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 clearly states the tool lists eSIMs on the signed-in account, specifying the exact fields returned (ICCID, status, data package, expiry, install link). It also distinguishes from siblings like topup_esim and list_esim_topups by focusing on existing SIMs rather than topups or orders.

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?

The description explicitly gives concrete use cases ('my eSIM', 'my SIM card', 'how much data do I have left') and advises using it before topping up a SIM. It also mentions the OAuth requirement, providing clear context for when to invoke. However, it does not explicitly state when not to use it or compare to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

my_ordersMy ordersA
Read-only
Inspect

List the signed-in customer's recent eSIM purchases with payment and provisioning status. Use for "what did I buy" or "did my order go through" when no order number is at hand. For the install QR and activation code of one order, use get_order_status.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already convey readOnlyHint=true, so the description does not need to restate safety. However, the description adds no additional behavioral context such as pagination, data freshness, or limits. With no parameters, the behavior is simple, but a slightly more detailed note on the scope of 'recent' would improve transparency.

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 sentences, front-loaded with the core purpose, followed by usage guidance and an alternative. Every sentence adds value with no redundancy or fluff.

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?

The description is adequate for a simple parameterless tool. It explains what is returned (payment and provisioning status) and when to use it. Minor gaps: no definition of 'recent' (e.g., time window or max count), and no mention of whether failed orders are included. With no output schema, a bit more detail on the returned fields would enhance completeness.

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?

There are zero parameters, so schema coverage is 100% vacuously. The description does not need to explain parameters. It adds meaning by specifying the implicit filtering to the signed-in customer's orders, which is beyond the empty schema. Baseline 4 for zero parameters 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?

The description clearly states the verb 'List' and the resource 'signed-in customer's recent eSIM purchases with payment and provisioning status.' It distinguishes from sibling tools like 'get_order_status' (for a specific order) and 'my_esims' (for eSIMs themselves), providing a precise purpose.

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?

Explicitly says when to use the tool ('what did I buy' or 'did my order go through' when no order number is at hand) and when not to, pointing to the alternative 'get_order_status' for querying a specific order's install QR and activation code.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_esim_plansSearch eSIM plansA
Read-only
Inspect

Search prepaid travel eSIM data plans for a destination — the SIM card / mobile data / roaming option for a trip. Use this first for any "data plan for my trip to X" request. Includes unlimited plans where the traveller picks the number of days, and fixed-data plans. Filter by unlimited vs fixed-data, minimum data, and validity. Unlimited plans are quoted per day, fixed-data plans as a one-off total — never compare those two numbers directly. The unlimited total is the per-day price × days, with a volume discount from 7 days, so pass days (trip length) to get that total quoted alongside the daily rate. Price differences between similar plans come from the routing IP country (routing_ip_country) and the supported networks (speed) — quote both when comparing plans. Results are grouped: fixed-data plans first, then unlimited; each group sorted by price. Returns variant_id values to pass to create_checkout.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoTrip length in days (1-30, the range an unlimited plan can be bought for). When given, unlimited plans also quote the total for that many days, multi-day discount included.
limitNoMax results, default 10
countryYesISO 3166-1 alpha-2 country code, e.g. 'JP', 'US'
currencyNoISO currency for prices, default USD
unlimitedNoIf set, return only unlimited (true) or only fixed-data (false) plans
min_data_gbNoMinimum data in GB (fixed-data plans)
max_validity_daysNoMaximum validity in days (fixed-data plans)

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint and openWorldHint annotations, the description richly discloses behavior: the per-day vs one-off pricing distinction, the volume discount up to 7 days, the dependence of price differences on routing_ip_country and networks, the grouping and sorting of results, and the return of variant_id for create_checkout. No contradiction with annotations.

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?

The description is long yet every sentence earns its place. It front-loads the core purpose and usage, then methodically covers pricing nuances, filters, pricing drivers, result ordering, and downstream integration. It is well-organized and dense with actionable information without fluff.

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 tool's complexity (7 params, no output schema, no nested objects), the description covers what an agent needs to call it correctly and interpret results: it explains the return value (variant_id), the grouping and sorting, how to pass parameters for accurate pricing, and how to use results for checkout. It also implies what fields might be useful for comparisons (routing_ip_country, networks). No significant gaps remain.

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 100%, but the description adds meaningful semantic context on top of the schema. For example, it explains that 'days' affects the total quote for unlimited plans and that 'unlimited' and 'min_data_gb' target different plan types. It also clarifies how to interpret prices across plan categories, which the schema alone does not convey.

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 and resource: 'Search prepaid travel eSIM data plans for a destination.' It further clarifies the domain with 'SIM card / mobile data / roaming option for a trip' and positions itself as the entry point ('Use this first'). This clearly distinguishes it from siblings like find_cheapest_plan or get_plan_details.

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 explicitly states when to use: 'Use this first for any ... request.' It also explains what the tool includes (unlimited vs fixed-data) and how filters work. However, it does not explicitly exclude cases where alternatives like find_cheapest_plan or get_plan_details should be used instead, so it stops short of full guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

topup_esimCreate eSIM top-up checkout linkAInspect

Recharge an eSIM the customer already owns with more data: builds a cart and returns a checkout URL to pay by credit card on hungry-esim.com. The installed SIM keeps working — no new QR code is issued. Use this instead of create_checkout when the traveller already has one of our eSIMs. Does NOT charge — the user completes payment on the website. Get iccid from my_esims and package_code from list_esim_topups.

ParametersJSON Schema
NameRequiredDescriptionDefault
iccidYesICCID of the eSIM to top up, from my_esims
countryNoCustomer's CHECKOUT country (ISO alpha-2) — sets checkout region/currency and URL locale. Defaults to US.
package_codeYesTop-up package code from list_esim_topups

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses several behavioral details beyond the annotations: the installed SIM keeps working, no new QR code is issued, the tool builds a cart and returns a checkout URL, and the user completes payment on the website. Annotations indicate it's not read-only and not destructive, and the description aligns with and adds context to these hints.

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?

The description is concise, consisting of two sentences plus two brief hints. It is front-loaded with the primary action and immediately adds distinguishing context. Every sentence serves a purpose without redundancy.

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?

With no output schema, the description adequately covers the return value (a checkout URL) and explains the side effects (no new QR, SIM continues working). It also clarifies the payment flow. For a tool of this complexity, the description is complete and leaves no major gaps.

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?

The input schema has 100% description coverage, so each parameter already has a clear explanation. The description echoes the schema for iccid and package_code sources and mentions the default for country. While helpful, it adds little semantic value beyond what the schema already provides, earning a baseline score of 3.

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 clearly states the specific action: recharging an eSIM with more data, building a cart, and returning a checkout URL. It explicitly distinguishes itself from the sibling tool 'create_checkout' by specifying when to use this tool instead, fulfilling the specific verb+resource+scope criteria.

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?

The description provides clear guidance on when to use this tool ('Use this instead of create_checkout when the traveller already has one of our eSIMs'), states what it does not do ('Does NOT charge'), and tells the agent where to obtain the required parameters ('Get iccid from my_esims and package_code from list_esim_topups').

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool update
    • Changedsearch_esim_plans1 field changed
      • addedInput schema / properties / days
        Added value: +{
        +  "description": "Trip length in days (1-30, the range an unlimited plan can be bought for). When given, unlimited plans also quote the total for that many days, multi-day discount included.",
        +  "maximum": 30,
        +  "minimum": 1,
        +  "type": "integer"
        +}
  2. 2 tool updates
    • Addedcheck_destination_coverage
    • Addedfind_cheapest_plan
  3. 8 tool updates
    • First observedcreate_checkout
    • First observedget_order_status
    • First observedget_plan_details
    • First observedlist_esim_topups
    • First observedmy_esims
    • First observedmy_orders
    • First observedsearch_esim_plans
    • First observedtopup_esim

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Search and buy travel eSIMs for 200+ countries, with specialized China plans that deliver uncensored internet without a VPN. Exposes five read-only tools to search plans, check device eSIM compatibility, get plan details, get help, and generate a secure on-site checkout link.
    MIT
  • -
    license
    Not graded
    quality
    B
    maintenance
    Lets AI agents search and buy travel eSIMs from ALT eSIM for 200+ destinations, with Stripe payment links and email delivery of QR codes.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation4/5

The tools are mostly distinct: search/check/find for discovery, get/list for details, create/topup for purchase, and order/esim management. The only mild overlap is between check_destination_coverage and find_cheapest_plan, but the description clarifies when to use each. Overall clear boundaries.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern: check_destination_coverage, find_cheapest_plan, search_esim_plans, get_plan_details, create_checkout, get_order_status, list_esim_topups, topup_esim, my_esims, my_orders. The 'my_' prefix for account-specific lists is a clear, consistent exception that serves its purpose.

Tool Count5/5

Ten tools is an ideal count for an eSIM travel data server. Each tool covers a necessary step in the user journey: discovery (search, check, find), details (get_plan_details), purchase (create_checkout), post-purchase (get_order_status, my_orders), and management (my_esims, list_esim_topups, topup_esim). Nothing feels redundant or missing.

Completeness5/5

The tool surface covers the full lifecycle: searching/checking coverage for a destination, getting plan details, purchasing, checking order status, viewing purchased eSIMs, topping up, and listing orders. No obvious gaps—this covers everything a traveller would need from planning to refilling data.