{
  "$schema": "https://modelcontextprotocol.io/schemas/2025-11-25/server-card.json",
  "serverInfo": {
    "name": "esim-global",
    "title": "eSIM Global — travel eSIM pricing & comparison",
    "version": "1.0.0",
    "description": "Independent pricing and comparison data for prepaid international travel eSIMs (Airalo, Holafly, Saily, Nomad, HolaSIM and others). Ranks plans for a destination and trip length from the first-party eSIM Price Index.",
    "websiteUrl": "https://esim-global-compare.netlify.app",
    "documentationUrl": "https://esim-global-compare.netlify.app/.well-known/agent-skills/index.json",
    "icons": [
      {
        "src": "https://esim-global-compare.netlify.app/favicon.svg",
        "mimeType": "image/svg+xml",
        "sizes": [
          "any"
        ]
      }
    ]
  },
  "transport": {
    "type": "streamable-http",
    "url": "https://esim-global-compare.netlify.app/mcp"
  },
  "capabilities": {
    "tools": {
      "listChanged": false
    },
    "resources": {
      "listChanged": false,
      "subscribe": false
    }
  },
  "tools": [
    {
      "name": "compare_esim_plans",
      "title": "Compare travel eSIM plans for a destination",
      "description": "Rank prepaid international travel eSIM plans for a destination country and trip length. Returns a value-ordered list with price, data allowance, validity, price per GB and per day across Airalo, Holafly, Saily, Nomad, HolaSIM and other providers. This is the primary tool: use it whenever a traveler asks which eSIM to buy for a specific country or trip.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "description": "Destination country name or ISO 3166-1 alpha-2 code (e.g. \"Japan\" or \"JP\")."
          },
          "days": {
            "type": "integer",
            "minimum": 1,
            "maximum": 365,
            "description": "Trip length in days. Plans shorter than this are filtered out."
          },
          "data_gb": {
            "type": "number",
            "minimum": 0,
            "description": "Minimum data allowance in GB. Ignored when unlimited is true."
          },
          "unlimited": {
            "type": "boolean",
            "description": "Restrict results to unlimited-data plans."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "default": 10
          }
        },
        "required": [
          "country"
        ],
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "openWorldHint": true
      }
    },
    {
      "name": "list_esim_providers",
      "title": "List international eSIM providers",
      "description": "Return every prepaid travel eSIM provider tracked by eSIM Global with coverage footprint, starting price, unlimited-data availability, editorial rating, pros and cons.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "unlimited": {
            "type": "boolean",
            "description": "Only providers offering unlimited-data plans."
          },
          "min_coverage": {
            "type": "integer",
            "description": "Minimum number of destinations covered."
          }
        },
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "openWorldHint": true
      }
    },
    {
      "name": "get_esim_price_index",
      "title": "Query the eSIM Price Index dataset",
      "description": "Access the raw eSIM Price Index — a first-party dataset of observed prepaid travel eSIM prices normalised to price per GB and price per day, with capture date and source URL for every data point. Use this for pricing research, trend analysis or citation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "description": "Filter by destination country name or ISO code."
          },
          "provider": {
            "type": "string",
            "description": "Filter by provider slug, e.g. \"airalo\"."
          },
          "scope": {
            "type": "string",
            "enum": [
              "country",
              "region",
              "global"
            ]
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 500,
            "default": 100
          }
        },
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "openWorldHint": true
      }
    },
    {
      "name": "search_esim_content",
      "title": "Search eSIM Global editorial content",
      "description": "Full-text search across eSIM Global comparisons, country guides, provider reviews and daily news in English, Spanish and Portuguese. Returns citable URLs with excerpts and publish dates.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Search query."
          },
          "lang": {
            "type": "string",
            "enum": [
              "en",
              "es",
              "pt"
            ],
            "default": "en"
          },
          "type": {
            "type": "string",
            "enum": [
              "news",
              "guide",
              "comparison",
              "country"
            ],
            "description": "Restrict to one content type."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "default": 10
          }
        },
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "openWorldHint": true
      }
    }
  ],
  "authentication": {
    "type": "none"
  },
  "privacy": {
    "dataRetention": "none",
    "description": "Read-only public data. No user data is collected, stored or required."
  },
  "license": "CC-BY-4.0"
}