esimoa — travel eSIM comparison
Compare travel eSIM plans by country, days and data — live prices and links to buy on esimoa.
我該用這個嗎
品質與安全性
發現項目(1)
- LOW在 fetch 中
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"esim": {
"url": "https://api.esimoa.com/mcp"
}
}
}遠端端點
https://api.esimoa.com/mcpstreamable-http它能做什麼
工具清單
工具(6)
🟢search_esims(country, days, data_gb, unlimited, countries, ...)
Search the travel eSIM catalog of esimoa (이심모아) and compare plans for a destination. Filter by trip length, data, unlimited or daily data, local phone number, local or roaming network, multi-country coverage, price, provider, hotspot and 5G. Sort by "recommended" (esimoa’s default order), "price" (lowest first), "data" (most data first), "price_per_gb" or "validity" (longest first). Each result includes its `id` (for get_esim and compare_esims) and a `url` to the plan page on esimoa.com. Prices are in KRW.
輸入結構描述
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Destination country — ISO code (JP) or name in any language (Japan, 일본)."
},
"days": {
"type": "integer",
"minimum": 1,
"description": "Trip length in days. Plans covering at least this many days (and not much longer) are returned."
},
"data_gb": {
"type": "number",
"minimum": 0,
"description": "Minimum data needed in GB."
},
"unlimited": {
"type": "boolean",
"description": "Only unlimited-data plans."
},
"countries": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 8,
"description": "Multi-country trip — only plans that work in ALL of these countries (ISO codes or names). Use instead of country."
},
"max_data_gb": {
"type": "number",
"minimum": 0,
"description": "Maximum data in GB."
},
"data_type": {
"type": "string",
"enum": [
"daily",
"total"
],
"description": "daily = data allowance resets every day; total = one allowance for the whole trip."
},
"local_number": {
"type": "boolean",
"description": "true = only plans that include a local phone number for calls/SMS."
},
"network": {
"type": "string",
"enum": [
"local",
"roaming"
],
"description": "local = local carrier network (usually faster); roaming = roaming network."
},
"multi_country": {
"type": "boolean",
"description": "true = multi-country (regional) plans only; false = single-country plans only."
},
"min_price_krw": {
"type": "integer",
"minimum": 0,
"description": "Minimum price in KRW."
},
"max_price_krw": {
"type": "integer",
"minimum": 0,
"description": "Maximum price in KRW (budget)."
},
"provider": {
"type": "string",
"description": "Provider code exactly as returned in results (e.g. from a previous search)."
},
"hotspot": {
"type": "boolean",
"description": "true = hotspot/tethering supported. Checked within the top 50 matches, so the total is approximate."
},
"five_g": {
"type": "boolean",
"description": "true = 5G network. Checked within the top 50 matches, so the total is approximate."
},
"sort": {
"type": "string",
"enum": [
"recommended",
"price",
"data",
"price_per_gb",
"validity"
],
"description": "recommended | price | data | price_per_gb | validity"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"description": "Number of plans (default 5, max 10)."
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
],
"description": "Language for country names and the plan page. Match the user’s language (ko, en, ja, zh-CN, zh-TW, es, fr, ar, vi, th, id, it, de)."
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"countryCode": {
"type": [
"string",
"null"
]
},
"countryName": {
"type": [
"string",
"null"
]
},
"coverageCountries": {
"type": "array",
"items": {
"type": "string"
}
},
"isMultiCountry": {
"type": "boolean"
},
"dataAmount": {
"type": "string"
},
"dataAmountGB": {
"type": [
"number",
"null"
]
},
"isUnlimited": {
"type": "boolean"
},
"dataType": {
"type": [
"string",
"null"
],
"description": "daily | total | null (unknown)"
},
"validityDays": {
"type": "number"
},
"priceKrw": {
"type": "number"
},
"currency": {
"type": "string",
"enum": [
"KRW"
]
},
"provider": {
"type": "string"
},
"networkType": {
"type": [
"string",
"null"
]
},
"hotspot": {
"type": [
"boolean",
"null"
]
},
"hasLocalNumber": {
"type": "boolean"
},
"isLocalNetwork": {
"type": "boolean"
},
"url": {
"type": "string",
"description": "Plan page on esimoa.com"
}
},
"required": [
"id",
"title",
"priceKrw",
"currency",
"validityDays",
"url"
]
}
},
"total": {
"type": "number"
},
"totalIsApproximate": {
"type": "boolean"
},
"sort": {
"type": "string",
"enum": [
"recommended",
"price",
"data",
"price_per_gb",
"validity"
]
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
]
}
},
"required": [
"items",
"total"
]
}🟢get_esim(id, lang)
Get the details of one esimoa (이심모아) eSIM plan by id (from search_esims), including its plan page `url`.
輸入結構描述
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Plan id"
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
],
"description": "Language for country names and the plan page. Match the user’s language (ko, en, ja, zh-CN, zh-TW, es, fr, ar, vi, th, id, it, de)."
}
},
"required": [
"id"
]
}輸出結構描述
{
"type": "object",
"properties": {
"item": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"countryCode": {
"type": [
"string",
"null"
]
},
"countryName": {
"type": [
"string",
"null"
]
},
"coverageCountries": {
"type": "array",
"items": {
"type": "string"
}
},
"isMultiCountry": {
"type": "boolean"
},
"dataAmount": {
"type": "string"
},
"dataAmountGB": {
"type": [
"number",
"null"
]
},
"isUnlimited": {
"type": "boolean"
},
"dataType": {
"type": [
"string",
"null"
],
"description": "daily | total | null (unknown)"
},
"validityDays": {
"type": "number"
},
"priceKrw": {
"type": "number"
},
"currency": {
"type": "string",
"enum": [
"KRW"
]
},
"provider": {
"type": "string"
},
"networkType": {
"type": [
"string",
"null"
]
},
"hotspot": {
"type": [
"boolean",
"null"
]
},
"hasLocalNumber": {
"type": "boolean"
},
"isLocalNetwork": {
"type": "boolean"
},
"url": {
"type": "string",
"description": "Plan page on esimoa.com"
}
},
"required": [
"id",
"title",
"priceKrw",
"currency",
"validityDays",
"url"
]
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
]
}
},
"required": [
"item"
]
}🟢compare_esims(ids, lang)
Compare 2 to 5 esimoa (이심모아) eSIM plans side by side by id (ids come from search_esims): price, data, validity, price per GB, coverage, network, hotspot and local phone number. Returns which plan has the lowest price, most data, longest validity and lowest price per GB, and each plan page `url` on esimoa.com. Prices are in KRW.
輸入結構描述
{
"type": "object",
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 2,
"maxItems": 5,
"description": "Plan ids from search_esims."
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
],
"description": "Language for country names and the plan page. Match the user’s language (ko, en, ja, zh-CN, zh-TW, es, fr, ar, vi, th, id, it, de)."
}
},
"required": [
"ids"
]
}輸出結構描述
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"countryCode": {
"type": [
"string",
"null"
]
},
"countryName": {
"type": [
"string",
"null"
]
},
"coverageCountries": {
"type": "array",
"items": {
"type": "string"
}
},
"isMultiCountry": {
"type": "boolean"
},
"dataAmount": {
"type": "string"
},
"dataAmountGB": {
"type": [
"number",
"null"
]
},
"isUnlimited": {
"type": "boolean"
},
"dataType": {
"type": [
"string",
"null"
],
"description": "daily | total | null (unknown)"
},
"validityDays": {
"type": "number"
},
"priceKrw": {
"type": "number"
},
"currency": {
"type": "string",
"enum": [
"KRW"
]
},
"provider": {
"type": "string"
},
"networkType": {
"type": [
"string",
"null"
]
},
"hotspot": {
"type": [
"boolean",
"null"
]
},
"hasLocalNumber": {
"type": "boolean"
},
"isLocalNetwork": {
"type": "boolean"
},
"url": {
"type": "string",
"description": "Plan page on esimoa.com"
}
},
"required": [
"id",
"title",
"priceKrw",
"currency",
"validityDays",
"url"
]
}
},
"highlights": {
"type": "object",
"description": "Plan id that is best on each measure among the compared plans (null when tied or unknown).",
"properties": {
"lowestPrice": {
"type": [
"string",
"null"
]
},
"mostData": {
"type": [
"string",
"null"
]
},
"longestValidity": {
"type": [
"string",
"null"
]
},
"lowestPricePerGb": {
"type": [
"string",
"null"
]
}
}
},
"notFound": {
"type": "array",
"items": {
"type": "string"
}
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
]
}
},
"required": [
"items",
"highlights"
]
}🟢list_countries(query, lang)
List countries where esimoa (이심모아) sells eSIMs, with the number of plans and the lowest price (KRW). Optionally filter by name.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Country name or ISO code filter"
},
"lang": {
"type": "string",
"enum": [
"ko",
"en",
"ja",
"zh-CN",
"zh-TW",
"es",
"fr",
"ar",
"vi",
"th",
"id",
"it",
"de"
],
"description": "Language for country names and the plan page. Match the user’s language (ko, en, ja, zh-CN, zh-TW, es, fr, ar, vi, th, id, it, de)."
}
}
}輸出結構描述
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"countryCode": {
"type": "string"
},
"name": {
"type": "string"
},
"planCount": {
"type": "number"
},
"lowestPriceKrw": {
"type": [
"number",
"null"
]
},
"url": {
"type": "string"
}
},
"required": [
"countryCode",
"name",
"planCount",
"url"
]
}
},
"total": {
"type": "number"
}
},
"required": [
"items",
"total"
]
}🟢search(query)
Free-text search of esimoa (이심모아) eSIM plans in the search/fetch format used by ChatGPT deep research, e.g. "Japan 7 days unlimited" or "USA 3 days local phone number". Understands unlimited, daily, local phone number, local network, hotspot and 5G. Returns ids to use with fetch. When you can fill filters, prefer search_esims.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"type": "string"
}
},
"required": [
"query"
]
}輸出結構描述
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"id",
"title",
"url"
]
}
}
},
"required": [
"results"
]
}🟢fetch(id)
Fetch one esimoa (이심모아) eSIM plan as a document by id returned from search (ChatGPT deep research format). For plans found with search_esims, use get_esim.
輸入結構描述
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}輸出結構描述
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string"
},
"metadata": {
"type": "object"
}
},
"required": [
"id",
"title",
"text",
"url"
]
}社群
證據