Skip to main content

SL – Stockholm public transport

io.github.Hashtagsmile/sl-mcpVersion 0.2.0

Stockholm public transport (SL): live departures, trips to addresses with exits, disruptions.

Status

Responds222 msAnswered our handshake without sign-in.

Registry data may be out of date

We could not refresh it, so this page shows the last copy.
Last checked
Nov 14, 2026, 14:38 UTC
Latency
222 ms
Remotes responding
1 of 1
Sign-in
No sign-in
Hosting
Hosted outside the EU (detected)
Registry data as of
Nov 14, 2026, 21:12 UTC

Data from the official MCP Registry, checked by run.zero. How we check

Connect

Streamable HTTP
https://sl-mcp.miltonlindblad.workers.dev/mcpResponds222 ms
No sign-in

Claude Code

claude mcp add --transport http sl-mcp https://sl-mcp.miltonlindblad.workers.dev/mcp

Claude Desktop and claude.ai

Settings > Connectors > Add custom connector
Name: sl-mcp
Remote MCP server URL: https://sl-mcp.miltonlindblad.workers.dev/mcp

Cursor

{
  "mcpServers": {
    "sl-mcp": {
      "url": "https://sl-mcp.miltonlindblad.workers.dev/mcp"
    }
  }
}

VS Code

code --add-mcp '{"name":"sl-mcp","type":"http","url":"https://sl-mcp.miltonlindblad.workers.dev/mcp"}'

Built your own server? run.zero hosts MCP servers on European infrastructure.

Host your own MCP server on run.zero

Tools

4 tools

Tools of SL – Stockholm public transport
Read-only
Idempotent
Open world
find_stopFind Stockholm public transport (SL) stops by name and return their ids, names and transport modes. Use it to get the siteId for get_departures, or a stop id for plan_trip. Not for street addresses: pass those to plan_trip as text instead. A name can match several stops ('Arlanda' gives the train station and bus stops): pick by name and modes, or ask the user. Typos are fine, abbreviations are not: write 'Tekniska högskolan', not 'KTH'. Returns one line per stop: '<id>: <town>, <name> (<modes>)'.Not declaredYesNot declaredYes
get_departuresList live departures from one SL stop, soonest first: line, mode, final destination, direction (1 or 2), platform or bus stop letter, minutes or clock time, delay, cancellation and SL's notes. Use it for 'when does the next X leave from Y'. To get from A to B, use plan_trip; for announced track work or broken lifts, use get_disruptions. Real-time data from SL: at most 3 departures per line and direction, up to 3 hours ahead. `towards` matches the final destination only: for a station on the way (e.g. 'mot T-Centralen' from Slussen), leave it out and pick the direction from the results. An unknown siteId gives no departures, not an error.Not declaredYesNot declaredYes
get_disruptionsList disruptions SL has announced: track work, closed entrances, broken lifts and replacement buses, with the lines affected and until when. Use it to check a line or the stops of a trip before travelling, e.g. lifts for a wheelchair. For live delays and cancelled departures, use get_departures instead. The text is in Swedish, so translate it if needed, and is cut at 800 characters. Results are cached for 1 minute, as SL asks. Leave both filters out to list everything.Not declaredYesNot declaredYes
plan_tripPlan trips by SL public transport between two stops or street addresses, leaving or arriving at a given time. Returns up to 3 trips, plus walking all the way when that takes at most 30 min. Each ride lists line, direction, platform, stops, crowding and delay; each walk lists minutes and the station exit (uppgång). Use it for 'how do I get to X' and 'when must I leave'; for departures from one stop, use get_departures. Addresses are fuzzy matched, so the result starts with what each one matched. Times are Stockholm time. Unknown stops, the same stop twice and times outside the timetable give a clear error. SL cannot plan step-free trips: for a wheelchair or pram, use prefer 'least walking' and check get_disruptions for broken lifts at the stops.Not declaredYesNot declaredYes