Tool tree
gradeNot graded
page: Every page
search_esim_plansAnswer
Find e-eSIM travel eSIM plans for a destination (country or region). Returns the best-value plans with full specifications, prices and a direct link. Use when a user wants mobile data abroad. Present only returned facts. price is the full fixed plan price, never per day or per GB. Every All You Can Surf grade has a daily full-speed allowance, then a reduced speed - never call a plan uncapped. Mention validity_clock, expires_on and notice when present. Use url and all_plans_url exactly.
View tool JSON
{
"name": "search_esim_plans",
"kind": "answer",
"impl": "imperative",
"description": "Find e-eSIM travel eSIM plans for a destination (country or region). Returns the best-value plans with full specifications, prices and a direct link. Use when a user wants mobile data abroad. Present only returned facts. price is the full fixed plan price, never per day or per GB. Every All You Can Surf grade has a daily full-speed allowance, then a reduced speed - never call a plan uncapped. Mention validity_clock, expires_on and notice when present. Use url and all_plans_url exactly.",
"inputSchema": {
"type": "object",
"properties": {
"destination": {
"type": "string",
"description": "Country or region in ANY language, e.g. \"Thailand\", \"Japon\", \"Europa\". City names are mapped to their country by you first."
},
"type": {
"type": "string",
"enum": [
"daily_surf",
"trip_surf",
"all_you_can_surf",
"any"
],
"description": "Plan type filter. daily_surf = fresh allowance each day; trip_surf = one pool for the trip; all_you_can_surf = unlimited-style. Default any."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override. Defaults to the currency shown on the page the user is on."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, ja. Defaults to the language of the page the user is on."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "How many plans to return, best value first. Default 10; all_plans_url always lists everything."
}
},
"required": [
"destination"
]
},
"page": "/"
}get_plan_detailsAnswer
Full details for one e-eSIM plan by product id: data allowance, validity, network, throttle behaviour, daily reset, full coverage country list, reviews, description and link. Present only the returned fields; never invent carrier, speed or coverage details that are not in the result. price is the full fixed price. State validity_clock, expires_on and notice whenever they are present.
View tool JSON
{
"name": "get_plan_details",
"kind": "answer",
"impl": "imperative",
"description": "Full details for one e-eSIM plan by product id: data allowance, validity, network, throttle behaviour, daily reset, full coverage country list, reviews, description and link. Present only the returned fields; never invent carrier, speed or coverage details that are not in the result. price is the full fixed price. State validity_clock, expires_on and notice whenever they are present.",
"inputSchema": {
"type": "object",
"properties": {
"product_id": {
"type": "integer",
"description": "WooCommerce product id from search_esim_plans."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, ja. Defaults to the language of the page the user is on."
}
},
"required": [
"product_id"
]
},
"page": "/"
}start_checkoutSensitive Action
Hand the customer to the e-eSIM shop to buy one plan. Returns buy_url (the product page where they tap Buy now to pay securely — card, Apple Pay, Google Pay) plus the plan name and price. No account needed; the eSIM is emailed right after payment. There is no in-chat order tracking and no discount-code field. Hand the customer to buy_url exactly as returned, as one clear link; the customer pays on that page. No cart is created here and there is no order tracking or discount code.
View tool JSON
{
"name": "start_checkout",
"kind": "transact",
"impl": "imperative",
"description": "Hand the customer to the e-eSIM shop to buy one plan. Returns buy_url (the product page where they tap Buy now to pay securely — card, Apple Pay, Google Pay) plus the plan name and price. No account needed; the eSIM is emailed right after payment. There is no in-chat order tracking and no discount-code field. Hand the customer to buy_url exactly as returned, as one clear link; the customer pays on that page. No cart is created here and there is no order tracking or discount code.",
"inputSchema": {
"type": "object",
"properties": {
"product_id": {
"type": "integer",
"description": "WooCommerce product id to buy."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, ja. Defaults to the language of the page the user is on."
}
},
"required": [
"product_id"
]
},
"page": "/"
}get_locale_stateAnswer
Read the current site locale: UI language, region and the active /{language-region}/ bucket of the page the user is on.
View tool JSON
{
"name": "get_locale_state",
"kind": "answer",
"impl": "imperative",
"description": "Read the current site locale: UI language, region and the active /{language-region}/ bucket of the page the user is on.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}set_languageAction
Switch the site to a supported language-region bucket such as "de-de" or "en-gb" and navigate to that locale; prices then show in that region's currency. Call get_locale_state first to see the current bucket.
View tool JSON
{
"name": "set_language",
"kind": "act",
"impl": "imperative",
"description": "Switch the site to a supported language-region bucket such as \"de-de\" or \"en-gb\" and navigate to that locale; prices then show in that region's currency. Call get_locale_state first to see the current bucket.",
"inputSchema": {
"type": "object",
"properties": {
"bucket": {
"type": "string",
"description": "Lowercase language-region bucket, e.g. \"de-de\", \"en-us\", \"ja-jp\".",
"enum": [
"en-gb",
"en-ie",
"de-de",
"de-at",
"de-ch",
"nl-nl",
"fr-fr",
"fr-be",
"es-es",
"it-it",
"pt-pt",
"pl-pl",
"cs-cz",
"fr-lu",
"de-li",
"fr-mc",
"it-sm",
"it-va",
"en-mt",
"el-cy",
"el-gr",
"tr-tr",
"sv-se",
"nb-no",
"da-dk",
"fi-fi",
"sk-sk",
"hr-hr",
"bg-bg",
"lt-lt",
"lv-lv",
"et-ee",
"sl-si",
"ro-ro",
"ro-md",
"hu-hu",
"uk-ua",
"sr-rs",
"sr-me",
"hr-ba",
"is-is",
"en-us",
"en-ca",
"fr-ca",
"en-jm",
"en-tt",
"en-bz",
"es-mx",
"es-cr",
"es-co",
"es-pe",
"es-cl",
"es-uy",
"es-ar",
"pt-br",
"es-ec",
"es-sv",
"es-pa",
"es-bo",
"es-py",
"es-hn",
"es-gt",
"es-do",
"en-au",
"en-nz",
"en-za",
"en-ke",
"en-zw",
"ru-ru",
"ru-by",
"ru-kz",
"ru-uz",
"en-in",
"en-ph",
"en-my",
"en-pk",
"zh-cn",
"zh-sg",
"zht-tw",
"zht-hk",
"zht-mo",
"ja-jp",
"ko-kr"
]
}
},
"required": [
"bucket"
]
},
"page": "/"
}set_currencyAction
Switch the displayed currency by ISO 4217 code such as "EUR", "USD" or "GBP". Currency follows the region, so the site navigates to the matching region in the user's current language.
View tool JSON
{
"name": "set_currency",
"kind": "act",
"impl": "imperative",
"description": "Switch the displayed currency by ISO 4217 code such as \"EUR\", \"USD\" or \"GBP\". Currency follows the region, so the site navigates to the matching region in the user's current language.",
"inputSchema": {
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "ISO 4217 currency code, e.g. \"EUR\", \"USD\", \"GBP\".",
"enum": [
"GBP",
"EUR",
"CHF",
"PLN",
"CZK",
"TRY",
"SEK",
"NOK",
"DKK",
"RON",
"MDL",
"HUF",
"UAH",
"RSD",
"BAM",
"ISK",
"USD",
"CAD",
"JMD",
"TTD",
"BZD",
"MXN",
"CRC",
"COP",
"PEN",
"CLP",
"UYU",
"ARS",
"BRL",
"BOB",
"PYG",
"HNL",
"GTQ",
"DOP",
"AUD",
"NZD",
"ZAR",
"KES",
"RUB",
"BYN",
"KZT",
"UZS",
"INR",
"PHP",
"MYR",
"PKR",
"CNY",
"SGD",
"TWD",
"HKD",
"MOP",
"JPY",
"KRW"
]
}
},
"required": [
"code"
]
},
"page": "/"
}get_consent_stateAnswer
Read the visitor's current cookie-consent state on this site. Necessary cookies are always on. Reports whether the visitor has decided yet and the on/off state of analytics, ads and personalized ads. By design there is no tool to grant consent: consent is given by a human on the banner.
View tool JSON
{
"name": "get_consent_state",
"kind": "answer",
"impl": "imperative",
"description": "Read the visitor's current cookie-consent state on this site. Necessary cookies are always on. Reports whether the visitor has decided yet and the on/off state of analytics, ads and personalized ads. By design there is no tool to grant consent: consent is given by a human on the banner.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}reject_non_essential_cookiesAction
Opt the visitor out of all non-essential cookies (analytics, ads, personalized ads) and close the consent banner. Necessary cookies remain. Records a refusal only; it can never grant consent - that is a human decision by design. Use when the user wants to decline tracking.
View tool JSON
{
"name": "reject_non_essential_cookies",
"kind": "act",
"impl": "imperative",
"description": "Opt the visitor out of all non-essential cookies (analytics, ads, personalized ads) and close the consent banner. Necessary cookies remain. Records a refusal only; it can never grant consent - that is a human decision by design. Use when the user wants to decline tracking.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/"
}page: Japan 7 days unlimited data day
get_current_planAnswer
Read the plan on the product page the user is viewing right now: the same facts as get_plan_details for that product, priced as shown on the page. Use when the user asks about "this plan" or the page they are on. No input. Present only the returned fields; never invent carrier, speed or coverage details that are not in the result. price is the full fixed price. State validity_clock, expires_on and notice whenever they are present.
View tool JSON
{
"name": "get_current_plan",
"kind": "answer",
"impl": "imperative",
"description": "Read the plan on the product page the user is viewing right now: the same facts as get_plan_details for that product, priced as shown on the page. Use when the user asks about \"this plan\" or the page they are on. No input. Present only the returned fields; never invent carrier, speed or coverage details that are not in the result. price is the full fixed price. State validity_clock, expires_on and notice whenever they are present.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/en-gb/product/japan-7-days-unlimited-data-day/"
}