SL – Stockholm public transport について
SL – Stockholm public transport は、ストックホルムの SL を利用する人向けの MCP サーバーです。SL のキー不要のオープン API を使い、発車時刻、運行障害、乗り場や駅出口を含む経路を案内します。
主な機能
- 01誤入力にも対応した停留所検索
- 02リアルタイムの発車・遅延確認
- 03発表済み運行障害の確認
- 04停留所や住所への経路検索
- 05交通手段や徒歩量による絞り込み
活用シーン
- 01次の便と乗り場の確認
- 02住所までの経路検索
- 03路線の運行障害の確認
MCP 対応
停留所検索、発車情報、運行障害、経路計画のツールを MCP クライアントに公開します。ホスト型の Streamable HTTP サーバーとローカル導入の両方に対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://sl-mcp.miltonlindblad.workers.dev/mcpclaude mcp add --transport http hashtagsmile-sl https://sl-mcp.miltonlindblad.workers.dev/mcp{"mcpServers":{"hashtagsmile-sl":{"type":"http","url":"https://sl-mcp.miltonlindblad.workers.dev/mcp"}}}Cursor で開く{"servers":{"hashtagsmile-sl":{"type":"http","url":"https://sl-mcp.miltonlindblad.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"hashtagsmile-sl":{"type":"http","url":"https://sl-mcp.miltonlindblad.workers.dev/mcp"}}}{"mcpServers":{"hashtagsmile-sl":{"serverUrl":"https://sl-mcp.miltonlindblad.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
sl-mcp
ストックホルムの公共交通機関(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 に到着します。
- 08:31 Kungsträdgården 行きの地下鉄 10 号線に 2 番線から乗車します。T-Centralen まで 7 駅です。
- 08:47 Skarpnäck 行きの地下鉄 17 号線に 4 番線から乗り換えます。Medborgarplatsen まで 3 駅です。
- 08:52~08:58 Folkungagatan Götgatan 出口から出て、Götgatan 76 まで徒歩 6 分です。
インストールせずに使う
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:路線、交通手段、地下鉄の色(「緑の路線」など)で、線路工事、エレベーターの故障、代替バスといった告知済みの運行の乱れを取得します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 キーなしで利用できる最寄り停留所検索 API がないため、「最寄り停留所」の検索はできません。
- SL では段差のない経路を計画できません。車いすの場合、ツールは徒歩を最小限にするよう提案し、エレベーターの故障を確認するよう案内します。
- 住所は使えますが、事業者名は使えません。「Götgatan 76」は使えますが、「Sellpy」は使えません。
- 出発便を確認できるのは最大 3 時間先までです。それ以降の経路には、時刻を指定して
plan_tripを使ってください。
データ
Trafiklab 経由で SL のデータを取得しています。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。