trvl for Windsurf
io.github.mikkoparkkola/trvl
Door-to-door travel MCP + CLI: flights, hotels, trains, cars, ferries. No API keys, Go binary.
client:Windsurf
transport:stdio
runtime:oci
Install trvl in Windsurf
~/.codeium/windsurf/mcp_config.json · windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
{
"mcpServers": {
"trvl": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mikkoparkkola/trvl:1.22.0"
],
"env": {
"TRVL_MCP_TOKEN": "<TRVL_MCP_TOKEN>",
"TRVL_MCP_READ_TOKEN": "<TRVL_MCP_READ_TOKEN>",
"TRVL_MCP_WRITE_TOKEN": "<TRVL_MCP_WRITE_TOKEN>",
"TRVL_MCP_OAUTH_INTROSPECTION_URL": "<TRVL_MCP_OAUTH_INTROSPECTION_URL>",
"TRVL_MCP_OAUTH_CLIENT_ID": "<TRVL_MCP_OAUTH_CLIENT_ID>",
"TRVL_MCP_OAUTH_CLIENT_SECRET": "<TRVL_MCP_OAUTH_CLIENT_SECRET>",
"TRVL_MCP_OAUTH_AUDIENCE": "<TRVL_MCP_OAUTH_AUDIENCE>",
"TRVL_MCP_TOOL_MODE": "<TRVL_MCP_TOOL_MODE>",
"TRVL_MCP_TOOL_TIMEOUT": "<TRVL_MCP_TOOL_TIMEOUT>",
"AFKLM_KEY": "<AFKLM_KEY>",
"AFKLM_OP_REF": "<AFKLM_OP_REF>",
"AFKLM_KEYCHAIN_SERVICE": "<AFKLM_KEYCHAIN_SERVICE>",
"AFKL_KLM_COOKIES": "<AFKL_KLM_COOKIES>",
"SERPAPI_KEY": "<SERPAPI_KEY>",
"TRAVELPAYOUTS_TOKEN": "<TRAVELPAYOUTS_TOKEN>",
"TRANSAVIA_API_KEY": "<TRANSAVIA_API_KEY>",
"TICKETMASTER_API_KEY": "<TICKETMASTER_API_KEY>",
"FOURSQUARE_API_KEY": "<FOURSQUARE_API_KEY>",
"OPENTRIPMAP_API_KEY": "<OPENTRIPMAP_API_KEY>",
"GEOAPIFY_API_KEY": "<GEOAPIFY_API_KEY>",
"DISTRIBUSION_API_KEY": "<DISTRIBUSION_API_KEY>",
"SKYSCANNER_API_KEY": "<SKYSCANNER_API_KEY>"
}
}
}
}
Global only — Windsurf has no per-project MCP config. Refresh Cascade after saving. Windsurf docs