Run the command with Codex CLI installed, then restart your session. Use codex mcp list 或 /mcp to check the connection. Codex MCP guide →
Claude Code
claude mcp add --transport http roamsonar https://roamsonar.com/mcp
Run the command from your project, then use /mcp in Claude Code. Keep tool-approval prompts enabled. Claude Code MCP guide →
Connected? Ask about your trip.
Use your own destination and trip length. The assistant can look up a country code with list_destinations, then compare plans.
A quick trip comparison
Use RoamSonar to compare eSIMs for Japan (JP), 10 days, normal data use, sorted by cheapest. Show five options with data allowance, validity, total USD price and coupon conditions. Include linked Data by RoamSonar attribution. Do not open purchase links.
Maps, messages and occasional browsing
Use RoamSonar for a 7-day trip to Italy (IT), light data use, sorted by recommended. Explain daily versus total allowances and flag any unknown hotspot support. Include linked Data by RoamSonar attribution. Do not open purchase links.
Unlimited, with the limits explained
Use RoamSonar to compare Thailand (TH) for 14 days with unlimited data need. Explain any daily high-speed caps and throttling in the results, without guessing missing features. Include linked Data by RoamSonar attribution. Do not open purchase links.
Ask for a short table with provider, allowance, validity, total USD price, coupon terms and a purchase link. Include 数据由 RoamSonar 提供 beneath it. The traveller chooses a link; the assistant must not open or test it automatically.
Two tools. Clear, structured results.
Tool
Input
Returns
list_destinations
{}
Country names and ISO-2 codes; up to 300 destinations.
search_esim_plans
country, days, need; optional sort
Up to 20 plans in one requested order, with attribution and price-check age.
JSON-RPC over Streamable HTTP. Results contain JSON text and, for newer negotiated versions, structuredContent.
currency / effective_price_usd
USD prices. Keep coupon eligibility alongside the price; cashback is not an instant discount.
plan_kind / data_mb / daily_mb
total, daily or unlimited. Data is in MB; do not label a daily allowance as a total allowance.
validity_days / features
Duration and supplied capabilities. Missing or null values are unknown, not a yes.
generated_at / prices_checked_minutes_ago
Response generation time and catalogue price-check age are different. Neither proves a checkout price check.
attribution / usage_policy / go_url
Keep linked attribution and returned purchase URLs. Never automatically request purchase links.
The assistant can format these results as a table or shortlist. The MCP does not provide images, an embedded shopping app, CSV exports, resources or booking tools. See 排名方法 套餐.
Transport details for developers
POST https://roamsonar.com/mcp
Content-Type: application/json
Accept: application/json, text/event-stream
MCP-Protocol-Version: <negotiated version>
Initialize first. Supported versions: November 2025, June 2025 and March 2025. One JSON-RPC message per request; 8 KiB request maximum. Result JSON is limited to 64 KiB before the text/structured copies. There is no persistent SSE stream or session; GET returns 405. Server-side clients omit Origin; browser-origin calls must be same-origin.
Prefer a plain JSON API?
Use the same catalogue without an MCP client. One plan response includes up to 20 results in each of Recommended, Cheapest and Fastest.
GET https://roamsonar.com/api/v1/plans?country=JP&days=10&need=normal
Use /api/v1/countries for destination codes. The plan endpoint accepts the same country, days and need values. Its optional include=variants adds a bounded duration comparison, not a catalogue export. REST and MCP share the allowances below.
Fair use. Proper credit. No automated clicks.
Every visible comparison needs linked attribution:数据由 RoamSonar 提供. Keep it beside the results, not only in hidden metadata.
[Data by RoamSonar](https://roamsonar.com)
Use it for a traveller’s request. Individual trip research, light travel-assistant integrations and attributed journalism are welcome.
Preserve the context. Keep coupon conditions, plan type, unknown features, freshness and returned purchase links intact.
Purchase links are for people. No programmatic GET or HEAD requests, prefetching, crawling, link validation or automated checkout visits.
Do not copy the catalogue. Bulk scraping, country/date enumeration, mirroring, raw-feed resale and quota evasion are not permitted.
Protect private information. Send only trip inputs. These tools do not need a name, email, passport, payment details or precise location.
Attribution and use rules are included in the MCP instructions and results. These rules do not make abuse impossible: server-side quotas and purchase-link protections also apply. Contact us before sustained or higher-volume use. Access may be restricted for misuse; public access is not an uptime or capacity guarantee.
Shared light-use limits
要求
每个网络地址
共享服务预算
Plan comparisons (REST + MCP)
12/minute · 120/UTC 日
2,000/UTC 日
目的地列表和健康检查
30/minute · 300/UTC 日
10,000/UTC 日
未缓存的计划比较
Already included in the plan quota
250/UTC 日;缓存的匹配仍然可用
Allowances apply to IPv4 addresses and IPv6 /64 networks, including cached requests. Offices, mobile networks and hosted AI clients can share a quota. Reconnecting or switching client names does not reset it. Additional edge burst limits apply.
Cache comparisons for 15 minutes; destinations for one hour. Health snapshots can be five minutes old; uncached health checks have a separate 500/day service budget. Do not poll for every chat turn or run background catalogue sweeps.
On 429, respect Retry-After. It is measured in seconds. X-RateLimit-Limit, X-RateLimit-Remaining 和 X-RateLimit-Reset describe the applicable quota window; reset is Unix seconds. A 503 means protection or data is temporarily unavailable. Do not retry either error in a tight loop. See our 隐私政策 对于短暂的滥用预防计数器。
MCP connection FAQs
Do I need a RoamSonar API key?
No. Choose no authentication for the public MCP. Light use is free and capacity-limited. Your AI app may require its own subscription or API account; RoamSonar does not provide model access.
How do I connect my AI assistant?
Copy the MCP server URL, open your assistant’s connector settings and add RoamSonar with no authentication. Then enable it in your conversation. Claude and ChatGPT have step-by-step guides above; Grok uses the xAI API. Pasting a URL into an ordinary chat does not install a tool.
Can I use this on Grok.com?
The documented Grok integration here uses remote MCP tools through the xAI API. It is not a one-click Grok.com installation. Use an xAI API account and a model that supports remote MCP tools.
Why does opening the MCP URL show an error?
The endpoint accepts MCP JSON-RPC POST requests, not normal web-page visits. A browser GET can return 405; that is expected. Add the URL in a Streamable HTTP MCP client and check that both tools appear.
Why do I get a 429 response or no connection?
Wait for the Retry-After interval rather than retrying repeatedly. Hosted assistants, offices and mobile networks can share an allowance. Check your app permits custom remote MCP servers, select no authentication, and enable the connector in your conversation. A 503 means the service or its protection layer is temporarily unavailable.
Are these live quotes, and can the MCP buy an eSIM?
Results come from RoamSonar’s cached catalogue, not a fresh checkout request. Keep the returned price-check age and coupon conditions visible. The two tools only read comparisons and destinations; they cannot book, pay, install an eSIM or open a provider’s checkout.
Can my agent open the purchase links to verify them?
No. Do not fetch, HEAD-check, prefetch, crawl or automatically open purchase or affiliate links. Preserve the returned links for a traveller’s deliberate selection. Automated link checking creates unwanted affiliate traffic and is not permitted.
Can I republish the catalogue or remove the attribution?
No. Visible comparisons must include Data by RoamSonar linked to roamsonar.com, with coupon conditions and purchase links preserved. Catalogue mirroring, bulk exports, resale, country/date enumeration and quota evasion are not permitted. Contact us before sustained or higher-volume use.