# eSIMpass

> Travel eSIMs for 200+ countries: live prices, phone check, checkout link, one-tap install.

- name: com.esimpass/esimpass
- version: 1.2.1
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 89/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.esimpass%2Fesimpass
- tools: https://api.protogrid.dev/v1/servers/com.esimpass%2Fesimpass/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "esimpass": {
      "type": "http",
      "url": "https://www.esimpass.com/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-5d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 89/100 (new)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 7 of 7 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 1,230 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 4 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 7, about 1,230 tokens to load them all
- tool set hash: f758c0dda4aa1f79eacc952f4b09ee81
- tools last changed: 2026-10-16T03:25:40.077Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.esimpass/esimpass.svg)](https://protogrid.dev/servers/com.esimpass/esimpass)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-16 `search` changed (description) **meaning changed**
  - before: Search eSIMpass destinations by place name. Returns ids to pass to fetch. Prefer search_destinations when you can call any tool.
  - after: Search eSIMpass destinations by place name, in the shape ChatGPT connectors use. Returns ids that fetch takes.
- 2026-10-16 `get_esim_install` added
  - After the traveller has paid: one-tap install links for their eSIM, for iPhone (iOS 17.4+) and Android (10+), plus the manual-entry codes. Takes the private eSIM link from the traveller's order confirmation page (https://www.esimpass.com/…/my-esim/…); any other value is refused. Each install link installs the eSIM when opened on the phone that will use it. The result is that traveller's private eSIM details.
- 2026-10-16 `create_checkout_link` changed (description) **meaning changed**
  - before: A checkout URL with one plan already selected, for the traveller to open and pay. You cannot pay or place the order: give the traveller the link; they enter their email and pay (card, Apple Pay, Google Pay, PayPal or crypto), and the eSIM QR code arrives by email in minutes. Use the plan name exactly as get_plans returned it.
  - after: A checkout URL on esimpass.com with one plan already selected. It does not pay or place an order: the traveller opens it, enters their email and pays (card, Apple Pay, Google Pay, PayPal or crypto). Minutes later the confirmation page has an Install button (one tap on iPhone and Android), a QR code and a private eSIM link. Takes a plan name as get_plans returns it.
- 2026-10-16 `get_plans` changed (description)
  - before: The plans on sale for one destination right now, with live prices, data, validity and the product page URL. For a regional plan it also lists every country covered: check each country of the trip against that list, a country missing from it is not covered. Always call this before quoting a price; prices and plans change.
  - after: The plans on sale for one destination right now, with live prices, data, validity and the product page URL. For a regional plan it also lists every country covered; a country missing from that list is not covered. Prices and plans change, so these are the current ones.
- 2026-10-16 `search_destinations` changed (description)
  - before: Find the eSIMpass travel eSIM for a place: a country ("Japan"), a region ("Europe", "Asia", "Global") or a city ("Tokyo", which is covered by its country's plans). Call this first when the traveller names a place, then pass the returned slug to get_plans.
  - after: Find the eSIMpass travel eSIM for a place: a country ("Japan"), a region ("Europe", "Asia", "Global") or a city ("Tokyo", which is covered by its country's plans). Returns matching destinations with the slug that get_plans and create_checkout_link take.

Full history: https://api.protogrid.dev/v1/servers/com.esimpass%2Fesimpass/changes

## Remotes

- https://www.esimpass.com/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (7)

- `check_device`: Whether a phone model supports eSIM, from the models eSIMpass documents (Apple, Samsung, Google). The phone must also be carrier-unlocked; a model not in the list is not necessarily incompatible.
- `create_checkout_link`: A checkout URL on esimpass.com with one plan already selected. It does not pay or place an order: the traveller opens it, enters their email and pays (card, Apple Pay, Google Pay, PayPal or crypto). Minutes later the confirmation page has an Install button (one tap on iPhone and Android), a QR code and a private eSIM link. Takes a plan name as get_plans returns it.
- `fetch`: One destination as a document: plans, live prices and a checkout link per plan. The id comes from search.
- `get_esim_install`: After the traveller has paid: one-tap install links for their eSIM, for iPhone (iOS 17.4+) and Android (10+), plus the manual-entry codes. Takes the private eSIM link from the traveller's order confirmation page (https://www.esimpass.com/…/my-esim/…); any other value is refused. Each install link installs the eSIM when opened on the phone that will use it. The result is that traveller's private eSIM details.
- `get_plans`: The plans on sale for one destination right now, with live prices, data, validity and the product page URL. For a regional plan it also lists every country covered; a country missing from that list is not covered. Prices and plans change, so these are the current ones.
- `search`: Search eSIMpass destinations by place name, in the shape ChatGPT connectors use. Returns ids that fetch takes.
- `search_destinations`: Find the eSIMpass travel eSIM for a place: a country ("Japan"), a region ("Europe", "Asia", "Global") or a city ("Tokyo", which is covered by its country's plans). Returns matching destinations with the slug that get_plans and create_checkout_link take.
