An MCP server for travelling in Switzerland, using the Swiss OpenData Transport API.
MCP server for Swiss public transport — connections, stationboards, real-time delays, and direct booking links for SBB.
Wraps transport.opendata.ch — free, no API key, no signup. Covers the full Swiss network (SBB, Postauto, regional, trams, buses, ships, cableways).
| Tool | Purpose |
|---|---|
search_locations | Resolve a station/stop/POI by name or coordinates |
search_connections | Plan A → B with via, transport-type filters, arrival-time mode |
get_stationboard | Live departures or arrivals from any stop |
get_booking_link | Build an SBB.ch URL for a journey so the user can buy a ticket |
No install needed — run directly with uvx:
uvx swiss-public-transport-mcpAdd to claude_desktop_config.json:
{
"mcpServers": {
"swiss-transport": {
"command": "uvx",
"args": ["swiss-public-transport-mcp"]
}
}
}Config file location:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsongit clone https://github.com/tpjnorton/swiss-public-transport-mcp.git
cd swiss-public-transport-mcp
uv sync
uv run swiss-public-transport-mcpIf you need official opentransportdata.swiss data — SIRI-SX disruption alerts, occupancy forecasts, OJP Fare ticket prices, train formation — see malkreide/swiss-transport-mcp. It exposes ~11 tools across the official OJP 2.0 / SIRI / CKAN APIs and requires a (free) API key from the opentransportdata.swiss API Manager.
| this server | malkreide/swiss-transport-mcp | |
|---|---|---|
| Data source | transport.opendata.ch | opentransportdata.swiss (official) |
| API key | none | required (free signup) |
| Tools | 4 (journey planning + booking links) | 11 (planning + disruptions + occupancy + fares + formation) |
| Setup | one command | per-API key configuration |
| Best for | quick journey planning, fast LLM responses, ticket purchase flow | rich operational data, official feeds |
The two servers cover overlapping but distinct use cases — you can install both side by side.
tpjnorton/swiss-public-transport-mcp
March 14, 2026
April 13, 2026
Python