Skip to main content
Glama

sbb-mcp

This package is now an alias for swisstrip-mcp. New users should install swisstrip-mcp directly: it is the canonical SwissTrip MCP client. The sbb-mcp name continues to work — it spawns swisstrip-mcp as a child process — so existing integrations don't break.


Independent MCP client by SwissTrip — connects AI assistants to Swiss Federal Railways (SBB / CFF / FFS) data: train schedules, station search, ticket prices, and direct ticket purchase links via SBB's SMAPI.

Thin client. All SBB API access, ticketing, and profile sync run on the hosted SwissTrip server at https://mcp.swisstrip.app/mcp.

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "swisstrip": {
      "command": "npx",
      "args": ["-y", "swisstrip-mcp"]
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "swisstrip": {
      "command": "npx",
      "args": ["-y", "swisstrip-mcp"]
    }
  }
}

ChatGPT (Plus / Pro / Business / Enterprise with Developer Mode)

No install required. Add a custom connector pointing at:

https://mcp.swisstrip.app/mcp

Existing sbb-mcp configurations

Already running npx -y sbb-mcp? Nothing changes — it still works and forwards to the same hosted service. To migrate to the canonical name, swap sbb-mcp → swisstrip-mcp in your client config when convenient.

Related MCP server: swiss-rail-mcp

Tools

  • search_stations — find Swiss stations, addresses, and points of interest

  • search_connections — train schedules between two stations

  • get_trip_details — detailed trip with all intermediate stops

  • get_more_connections — earlier or later trains for a previous search

  • get_prices — ticket prices with Halbtax / GA discounts

  • get_ticket_link — direct purchase link to SBB.ch

  • save_profile / get_profile — save your travel profile locally

  • list_travelers — multi-traveler family pricing (requires SWISSTRIP_TOKEN)

Optional configuration

Environment variable

Purpose

SWISSTRIP_TOKEN

Sync your traveler profile from your SwissTrip account. Mint at https://swisstrip.app/settings/developer.

SWISSTRIP_MCP_URL

Override the hosted server URL. Default: https://mcp.swisstrip.app/mcp.

SBB_MCP_URL

Same as above (legacy name, still supported).

Why was this renamed?

sbb-mcp started as the canonical npm package. To protect against future trademark conflicts (the SBB acronym belongs to Schweizerische Bundesbahnen) the canonical implementation now lives at swisstrip-mcp, which is registered under the SwissTrip™ trademark. sbb-mcp and 8 other npm names (sbb-mcp-official, sbb-cff-ffs-mcp, swiss-rail-mcp, swiss-railways-mcp, swiss-train-mcp, swisstrip, swisstrip-ai, swisstrip-server) are 1-line spawners that depend on swisstrip-mcp.

This means: if any one of the SBB-themed names ever needs to be transferred or removed, every existing integration keeps running unchanged because they all forward to the canonical swisstrip-mcp.

License

Proprietary. See LICENSE. © 2026 SwissTrip.

For commercial licensing inquiries: fabsforward2@gmail.com.

Available Tools

9 tools
get_more_connectionsGet More ConnectionsA
Read-onlyIdempotent

Load earlier or later train connections for a previous search. Use the collection ID from search_connections results.

Inputs: collection_id (required), direction (required).

get_pricesGet PricesA
Read-onlyIdempotent

Get ticket prices for one or more train connections. Supports Half-Fare card (Halbtax) and GA travelcard discounts. When connected to SwissTrip (SWISSTRIP_TOKEN), pass traveler_names to get family pricing for multiple travelers.

Inputs: trip_ids (required), traveler_type, reduction_card, traveler_names.

get_profileGet Travel ProfileA
Read-onlyIdempotent

Read the user's saved travel profile. Check this before showing prices to use correct reduction card. If no profile exists, ask the user for their details.

Inputs: no named parameters.

get_trip_detailsGet Trip DetailsA
Read-onlyIdempotent

Get detailed information about a specific train connection including all intermediate stops, platforms, and occupancy. Use a trip ID from search_connections results.

Inputs: trip_id (required).

list_travelersList TravelersA
Read-onlyIdempotent

List all travelers in the user's SwissTrip account (self, partner, kids). Each traveler has their own reduction card. Use their names with get_prices for family trip pricing. Requires SWISSTRIP_TOKEN.

Inputs: no named parameters.

save_profileSave Travel ProfileA
Idempotent

Save the user's travel profile locally for future sessions. Call this after asking the user for their details (name, date of birth, reduction card). Data is stored at ~/.sbb-mcp/profile.json.

Inputs: first_name, last_name, date_of_birth, reduction_card, +1 more.

search_connectionsSearch ConnectionsA
Read-onlyIdempotent

Find train connections between two Swiss stations. Returns schedules with departure/arrival times, duration, transfers, and trip IDs for pricing.

Inputs: from (required), to (required), date, time, +1 more.

search_stationsSearch StationsA
Read-onlyIdempotent

Search for Swiss train stations, addresses, or points of interest by name. Returns station IDs needed for other tools.

Inputs: query (required), limit.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.3/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool targets a distinct aspect: station search, connection search, trip details, pricing, ticket link, loading more connections, profile read/save, and traveler listing. No overlapping purposes.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with underscores (e.g., search_connections, get_prices, list_travelers), making them predictable and easy to navigate.

    Tool Count5/5

    9 tools is well-scoped for a Swiss railway assistant, covering search, planning, pricing, purchase, and profile management without bloat or deficiency.

    Completeness4/5

    Covers core workflows: station search, connection search, trip details, pricing, purchase link, and profile. Minor gap in real-time delay information, but overall complete for travel planning and purchasing.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers