Travel eSIM for 33 European countries, 90 days: live quotes by GB, country check, buy link.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Is one country included? Pass its name in any language or its ISO-2 code (map a city to its country first). Returns included true/false; when included, the server price of the european eSIM at the asked (or default) data size and its buy_url. Countries such as Switzerland or Serbia come back included=false.
Country in ANY language or its ISO code, e.g. "Italy", "Italia", "it".
The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config.
Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language.
Optional ISO 4217 override for prices.
ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http esim-catalog https://europeanesim.com/wp-json/europeanesim/mcp
Is one country included? Pass its name in any language or its ISO-2 code (map a city to its country first). Returns included true/false; when included, the server price of the european eSIM at the asked (or default) data size and its buy_url. Countries such as Switzerland or Serbia come back included=false.
| Argument | Type | Description |
|---|---|---|
| gb | integer | The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config. |
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| country* | string | Country in ANY language or its ISO code, e.g. "Italy", "Italia", "it". |
| currency | string | Optional ISO 4217 override for prices. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
{
"type": "object",
"required": [
"country"
],
"properties": {
"gb": {
"enum": [
3,
5,
10,
20,
30,
50,
100
],
"type": "integer",
"description": "The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config."
},
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"country": {
"type": "string",
"description": "Country in ANY language or its ISO code, e.g. \"Italy\", \"Italia\", \"it\"."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override for prices."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
}
}
}What european eSIM is and how it works, in the shop’s own words: one mobile-data eSIM for 33 countries in Europe, one data pool, validity (90 days from the first connection), recharge, delivery, installation, devices, payment, refunds, My eSIM, e-mails, support. Use for any question that is not a price or a country.
| Argument | Type | Description |
|---|---|---|
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
{
"type": "object",
"properties": {
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
}
}
}Every country the european eSIM includes (33 in Europe, the UK, Norway, Iceland and Turkey among them), the European countries that are NOT included, and the starting price (the smallest data size). Use to show where the eSIM works.
| Argument | Type | Description |
|---|---|---|
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| currency | string | Optional ISO 4217 override for prices. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
| include_networks | boolean | Optional: add the mobile networks of each country when the shop names them. |
{
"type": "object",
"properties": {
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override for prices."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
},
"include_networks": {
"type": "boolean",
"description": "Optional: add the mobile networks of each country when the shop names them."
}
}
}Every data size (or the sizes asked for) in one call, each with the server price and its own buy_url. Same server prices as quote_esim.
| Argument | Type | Description |
|---|---|---|
| gb | array | Optional: the sizes to price. Omit = every size (3, 5, 10, 20, 30, 50, 100). |
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| currency | string | Optional ISO 4217 override for prices. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
{
"type": "object",
"properties": {
"gb": {
"type": "array",
"items": {
"enum": [
3,
5,
10,
20,
30,
50,
100
],
"type": "integer"
},
"maxItems": 7,
"description": "Optional: the sizes to price. Omit = every size (3, 5, 10, 20, 30, 50, 100)."
},
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override for prices."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
}
}
}Use while the customer is still deciding — "how much is …?": the exact server price of ONE european eSIM at a data size — the amount the customer would pay — with the number of countries, the validity (90 days from the first connection), hotspot, the recharge options and prices, and a buy_url for reference. Quote the price as returned; never compute or scale it. When the customer says they want to buy, call start_checkout.
| Argument | Type | Description |
|---|---|---|
| gb | integer | The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config. |
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| currency | string | Optional ISO 4217 override for prices. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
{
"type": "object",
"properties": {
"gb": {
"enum": [
3,
5,
10,
20,
30,
50,
100
],
"type": "integer",
"description": "The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config."
},
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override for prices."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
}
}
}Use when the customer names the countries of a trip instead of a size: returns which countries are included (countries that are not included come back in not_covered), a suggested data size from the days (up to 90) and usage (light ≈ 0.5 GB/day, normal ≈ 1.5, heavy ≈ 4; rounded up to the next size) and server quotes for that size and one size down and up, each with its buy_url. Same prices as quote_esim.
| Argument | Type | Description |
|---|---|---|
| days | integer | Optional: days the customer will use mobile data (one eSIM is valid 90 days). Without days the size follows the usage alone (light 5 / normal 10 / heavy 20 GB). |
| usage | string | light ≈ 0.5 GB/day (messaging, maps, mail), normal ≈ 1.5 GB/day (default; social media, music, some video), heavy ≈ 4 GB/day (video streaming, video calls, hotspot for a laptop). |
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| budget | number | Optional budget in the quoted currency; options above it are marked. |
| currency | string | Optional ISO 4217 override for prices. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
| countries* | array | The countries of the trip, names in any language or ISO-2 codes, e.g. ["France", "Italy", "Spain"]. Map cities to their countries first. |
| gb_per_day | number | Optional: the customer's own estimate in GB per day (wins over usage). |
{
"type": "object",
"required": [
"countries"
],
"properties": {
"days": {
"type": "integer",
"maximum": 365,
"minimum": 1,
"description": "Optional: days the customer will use mobile data (one eSIM is valid 90 days). Without days the size follows the usage alone (light 5 / normal 10 / heavy 20 GB)."
},
"usage": {
"enum": [
"light",
"normal",
"heavy"
],
"type": "string",
"description": "light ≈ 0.5 GB/day (messaging, maps, mail), normal ≈ 1.5 GB/day (default; social media, music, some video), heavy ≈ 4 GB/day (video streaming, video calls, hotspot for a laptop)."
},
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"budget": {
"type": "number",
"description": "Optional budget in the quoted currency; options above it are marked."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override for prices."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
},
"countries": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 30,
"minItems": 1,
"description": "The countries of the trip, names in any language or ISO-2 codes, e.g. [\"France\", \"Italy\", \"Spain\"]. Map cities to their countries first."
},
"gb_per_day": {
"type": "number",
"maximum": 50,
"minimum": 0.1,
"description": "Optional: the customer's own estimate in GB per day (wins over usage)."
}
}
}Use only once the customer has decided to buy ("I'll take it", "how do I buy?"): the checkout handoff for one choice (same input as quote_esim). Returns the buy_url to give the customer, the final price and a ready-to-send checkout block (next_step, payment_methods, delivery) — the shop page opens preset to exactly this data size; the customer presses the buy button (buy_button in the result, e.g. "Get your eSIM" in English) and pays 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_esim.
| Argument | Type | Description |
|---|---|---|
| gb | integer | The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config. |
| bucket | string | Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language. |
| currency | string | Optional ISO 4217 override for prices. |
| language | string | ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices. |
{
"type": "object",
"properties": {
"gb": {
"enum": [
3,
5,
10,
20,
30,
50,
100
],
"type": "integer",
"description": "The data pool in GB, ONE pool for every included country, valid 90 days: 3, 5, 10, 20, 30, 50 or 100. Omit = 10 GB. Not sure? Call recommend_config."
},
"bucket": {
"type": "string",
"description": "Optional language-region bucket the customer shops in, e.g. en-gb, de-de (sets currency and link locale). Defaults from language."
},
"currency": {
"type": "string",
"description": "Optional ISO 4217 override for prices."
},
"language": {
"type": "string",
"description": "ISO language of the conversation, e.g. en, de, it. Localizes country names and sets the language/currency of links and prices."
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 9, 2026.