{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.MikkoParkkola/trvl","description":"Door-to-door travel MCP + CLI: flights, hotels, trains, cars, ferries. No API keys, Go binary.","title":"trvl","repository":{"url":"https://github.com/MikkoParkkola/trvl","source":"github"},"version":"1.21.6","websiteUrl":"https://github.com/MikkoParkkola/trvl","packages":[{"registryType":"oci","identifier":"ghcr.io/mikkoparkkola/trvl:1.21.6","transport":{"type":"stdio"},"environmentVariables":[{"description":"Bearer token for HTTP-mode auth (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_TOKEN"},{"description":"Read-scoped bearer token for HTTP-mode auth (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_READ_TOKEN"},{"description":"Write-scoped bearer token for HTTP-mode auth (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_WRITE_TOKEN"},{"description":"OAuth token introspection endpoint for HTTP-mode auth (unused in stdio). Optional.","name":"TRVL_MCP_OAUTH_INTROSPECTION_URL"},{"description":"OAuth client ID for HTTP-mode token introspection (unused in stdio). Optional.","name":"TRVL_MCP_OAUTH_CLIENT_ID"},{"description":"OAuth client secret for HTTP-mode token introspection (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_OAUTH_CLIENT_SECRET"},{"description":"Expected OAuth audience for HTTP-mode token introspection (unused in stdio). Optional.","name":"TRVL_MCP_OAUTH_AUDIENCE"},{"description":"Selects which MCP tool set is registered (e.g. smart/full). Optional, defaults to full set.","name":"TRVL_MCP_TOOL_MODE"},{"description":"Per-tool-call timeout override. Optional, defaults to the built-in timeout.","name":"TRVL_MCP_TOOL_TIMEOUT"},{"description":"Air France-KLM API key; unlocks that airline's live fares/award search. Optional, trvl works without it.","isSecret":true,"name":"AFKLM_KEY"},{"description":"1Password reference for the Air France-KLM API key. Optional, alternative to AFKLM_KEY.","name":"AFKLM_OP_REF"},{"description":"macOS Keychain service name to read the Air France-KLM API key from. Optional, alternative to AFKLM_KEY.","name":"AFKLM_KEYCHAIN_SERVICE"},{"description":"Session cookies for Air France-KLM award search. Optional, unlocks award-fare lookups only.","isSecret":true,"name":"AFKL_KLM_COOKIES"},{"description":"SerpApi API key; unlocks search-engine-backed lookups used by some providers. Optional, trvl works without it.","isSecret":true,"name":"SERPAPI_KEY"},{"description":"Travelpayouts API token; unlocks that flight-price data source. Optional, trvl works without it.","isSecret":true,"name":"TRAVELPAYOUTS_TOKEN"},{"description":"Transavia API key; unlocks that airline's live fares. Optional, trvl works without it.","isSecret":true,"name":"TRANSAVIA_API_KEY"},{"description":"Ticketmaster API key; unlocks event listings for destinations. Optional, trvl works without it.","isSecret":true,"name":"TICKETMASTER_API_KEY"},{"description":"Foursquare API key; unlocks that place-search data source. Optional, trvl works without it.","isSecret":true,"name":"FOURSQUARE_API_KEY"},{"description":"OpenTripMap API key; unlocks that attractions data source. Optional, trvl works without it.","isSecret":true,"name":"OPENTRIPMAP_API_KEY"},{"description":"Geoapify API key; unlocks that places/geocoding data source. Optional, trvl works without it.","isSecret":true,"name":"GEOAPIFY_API_KEY"},{"description":"Distribusion API key; unlocks that ground-transport data source. Optional, trvl works without it.","isSecret":true,"name":"DISTRIBUSION_API_KEY"},{"description":"Skyscanner API key; unlocks that car-hire data source. Optional, trvl works without it.","isSecret":true,"name":"SKYSCANNER_API_KEY"}]},{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"trvl-mcp","version":"1.21.6","runtimeHint":"npx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Bearer token for HTTP-mode auth (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_TOKEN"},{"description":"Read-scoped bearer token for HTTP-mode auth (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_READ_TOKEN"},{"description":"Write-scoped bearer token for HTTP-mode auth (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_WRITE_TOKEN"},{"description":"OAuth token introspection endpoint for HTTP-mode auth (unused in stdio). Optional.","name":"TRVL_MCP_OAUTH_INTROSPECTION_URL"},{"description":"OAuth client ID for HTTP-mode token introspection (unused in stdio). Optional.","name":"TRVL_MCP_OAUTH_CLIENT_ID"},{"description":"OAuth client secret for HTTP-mode token introspection (unused in stdio). Optional.","isSecret":true,"name":"TRVL_MCP_OAUTH_CLIENT_SECRET"},{"description":"Expected OAuth audience for HTTP-mode token introspection (unused in stdio). Optional.","name":"TRVL_MCP_OAUTH_AUDIENCE"},{"description":"Selects which MCP tool set is registered (e.g. smart/full). Optional, defaults to full set.","name":"TRVL_MCP_TOOL_MODE"},{"description":"Per-tool-call timeout override. Optional, defaults to the built-in timeout.","name":"TRVL_MCP_TOOL_TIMEOUT"},{"description":"Air France-KLM API key; unlocks that airline's live fares/award search. Optional, trvl works without it.","isSecret":true,"name":"AFKLM_KEY"},{"description":"1Password reference for the Air France-KLM API key. Optional, alternative to AFKLM_KEY.","name":"AFKLM_OP_REF"},{"description":"macOS Keychain service name to read the Air France-KLM API key from. Optional, alternative to AFKLM_KEY.","name":"AFKLM_KEYCHAIN_SERVICE"},{"description":"Session cookies for Air France-KLM award search. Optional, unlocks award-fare lookups only.","isSecret":true,"name":"AFKL_KLM_COOKIES"},{"description":"SerpApi API key; unlocks search-engine-backed lookups used by some providers. Optional, trvl works without it.","isSecret":true,"name":"SERPAPI_KEY"},{"description":"Travelpayouts API token; unlocks that flight-price data source. Optional, trvl works without it.","isSecret":true,"name":"TRAVELPAYOUTS_TOKEN"},{"description":"Transavia API key; unlocks that airline's live fares. Optional, trvl works without it.","isSecret":true,"name":"TRANSAVIA_API_KEY"},{"description":"Ticketmaster API key; unlocks event listings for destinations. Optional, trvl works without it.","isSecret":true,"name":"TICKETMASTER_API_KEY"},{"description":"Foursquare API key; unlocks that place-search data source. Optional, trvl works without it.","isSecret":true,"name":"FOURSQUARE_API_KEY"},{"description":"OpenTripMap API key; unlocks that attractions data source. Optional, trvl works without it.","isSecret":true,"name":"OPENTRIPMAP_API_KEY"},{"description":"Geoapify API key; unlocks that places/geocoding data source. Optional, trvl works without it.","isSecret":true,"name":"GEOAPIFY_API_KEY"},{"description":"Distribusion API key; unlocks that ground-transport data source. Optional, trvl works without it.","isSecret":true,"name":"DISTRIBUSION_API_KEY"},{"description":"Skyscanner API key; unlocks that car-hire data source. Optional, trvl works without it.","isSecret":true,"name":"SKYSCANNER_API_KEY"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-10T17:49:14.342179Z","publishedAt":"2026-09-10T17:49:14.342179Z","updatedAt":"2026-09-10T17:49:14.342179Z","isLatest":true}}}
