mcpField
S
SL – Stockholm public transport

SL – Stockholm public transport

远程服务
github.com地图与出行01 周前更新

关于 SL – Stockholm public transport

SL – Stockholm public transport 是面向斯德哥尔摩 SL 公共交通出行的 MCP 服务,可查询实时发车、交通中断并规划路线,提供站台、延误和车站出口信息,使用 SL 无需密钥的开放 API。

主要功能

  1. 01搜索站点并容忍拼写错误
  2. 02查看实时发车与延误
  3. 03查询已公告的交通中断
  4. 04规划前往站点或地址的路线
  5. 05按交通方式和步行量筛选

适用场景

  1. 01查询下一班车及站台
  2. 02规划前往街道地址的路线
  3. 03查看线路是否发生中断

MCP 相关

向 MCP 客户端提供站点搜索、发车查询、交通中断查询和行程规划工具。可使用托管的 Streamable HTTP 服务,也可本地安装。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://sl-mcp.miltonlindblad.workers.dev/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

sl-mcp

CI Release License: MIT sl-mcp MCP server score

一款面向斯德哥尔摩公共交通(SL)的 MCP 服务。将其连接到 Claude 或其他 MCP 客户端,即可使用瑞典语或英语询问出发信息、服务中断情况和行程。

När går nästa tunnelbana från Slussen mot Ropsten?
Är det några störningar på röda linjen?
How do I get from Odenplan to Arlanda?
Hur tar jag mig från Sundbyberg till Götgatan 76?

它使用 SL 的开放 API,无需 API 密钥。

回答示例如下:

08:31 从 Sundbybergs centrum 出发,08:58 即可抵达 Götgatan 76。

  1. 08:31 乘坐开往 Kungsträdgården 的地铁 10 号线,从站台 2出发。乘坐 7 站到 T-Centralen。
  2. 08:47 换乘开往 Skarpnäck 的地铁 17 号线,从站台 4出发。乘坐 3 站到 Medborgarplatsen。
  3. 08:52–08:58 从Folkungagatan Götgatan 出口出站,步行 6 分钟到 Götgatan 76。

无需安装即可使用

Cloudflare Workers 上运行着一个托管服务。无需 API 密钥或登录:

https://sl-mcp.miltonlindblad.workers.dev/mcp

将其添加为 claude.ai 或 ChatGPT 中的自定义连接器,也可以添加到支持 Streamable HTTP 的任何 MCP 客户端中。在 Claude Code 中:

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

工具

  • find_stop:按名称搜索站点,支持拼写错误,并获取站点 ID
  • get_departures:查询站点的实时出发信息,包括站台或公交站字母、延误和取消情况。可按交通方式、线路或目的地筛选
  • get_disruptions:按线路、交通方式或地铁线路颜色(“grön linje”)查询已公告的服务中断情况,例如轨道施工、电梯故障和替代巴士
  • plan_trip:规划最多 3 条站点或街道地址之间的行程,可指定出发或抵达时间。每段乘车信息显示站台、站点、拥挤程度和延误;每段步行信息显示所需分钟数及应使用的车站出口。可指定只使用某些交通方式(例如船),也可选择最少换乘或最少步行
提示词

可在客户端中选择的预设问题,例如作为斜杠命令:

  • trip:查询从一个地点到另一个地点的路线,可选择指定抵达时间
  • departures:查询某个站点的下一班车

安装

需要 Node.js 20 或更高版本。

git clone https://github.com/Hashtagsmile/sl-mcp.git
cd sl-mcp
npm install
npm run build
Claude Code
claude mcp add sl -- node /path/to/sl-mcp/dist/index.js
Claude Desktop

将以下内容添加到 claude_desktop_config.json,然后重启 Claude Desktop:

{
  "mcpServers": {
    "sl": {
      "command": "node",
      "args": ["/path/to/sl-mcp/dist/index.js"]
    }
  }
}

开发

npm run dev       # compile on save
npm test          # run the tests
npm run inspect   # try the tools in the MCP Inspector

测试使用 test/fixtures/ 中记录的 API 响应,因此不会调用 SL。

部署到 Cloudflare Workers

src/worker.ts 通过 HTTP 在 /mcp 提供相同的工具。

npx wrangler dev      # run it locally on http://localhost:8787/mcp
npx wrangler deploy   # deploy to your Cloudflare account

限制

  • SL 每条线路、每个方向最多返回 3 个出发信息。
  • 服务中断消息只有瑞典语。
  • 没有“最近站点”搜索功能,因为 SL 没有无需密钥的相关 API。
  • SL 无法规划无障碍路线。对于轮椅出行,工具会建议选择步行较少的路线,并检查电梯是否故障。
  • 地址可用,商家名称不可用:“Götgatan 76”可用,“Sellpy”不可用。
  • 出发信息最多可查询未来 3 小时。更晚的行程请使用 plan_trip 并指定时间。

数据

数据由 SL 提供,通过 Trafiklab 获取。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。