mcpField
R
rozklad-mcp

rozklad-mcp

リモート
github.com/ContentWriterco地図・旅行345 日前に更新
リポジトリ

rozklad-mcp について

rozklad-mcpは、ポーランドの公共交通を調べる旅行者やAIクライアント向けのMCPサーバーです。鉄道、バス、約25都市の交通を対象に、乗り換え、リアルタイムの遅延、鉄道の運行障害、気象警報、一部の運賃を確認できます。

主な機能

  1. 01鉄道・バスの乗り換え経路検索
  2. 02駅の発着時刻の確認
  3. 03列車の遅延や運行障害の確認
  4. 04近くの駅や停留所の検索
  5. 05気象警報と一部運賃の取得
  6. 06CLIでの経路・データソース照会

活用シーン

  1. 01ポーランド国内の都市間移動の計画
  2. 02駅の発車時刻と番線の確認
  3. 03経路上の遅延・運休・迂回の確認
  4. 04対象となる鉄道運賃の見積もり

MCP 対応

経路検索、発車情報、列車詳細、停留所検索、鉄道の運行障害、気象警報、データソースのツールをMCPクライアントに公開します。公開Streamable HTTPエンドポイントまたはローカルインストールで接続できます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://rozklad.compabase.com/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 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

パッケージ
npmrozklad-mcp0.4.1

ツール

詳細

rozkład-mcp 🚆🚌

PKP、PKS、都市交通機関の時刻表を、AI アシスタントに提供します。
MCP サーバー:乗り換え検索、出発時刻、リアルタイムの遅延、運賃を、Claude、ChatGPT、Cursor、VS Code、あらゆる MCP クライアントで利用できます。

npm MCP Registry CI MITライセンス APIキー不要

アニメーション:ユーザーがAIアシスタントにズボンシンからクルニクへの行き方を尋ね、アシスタントがrozklad-mcpを使って、IC列車、バスターミナルへの移動、PKSバスの時刻と料金を案内します

30秒で接続 · 質問例 · ローカルインストール · English

ポーランド国内の全列車(PKP Intercity、Polregio、Koleje Mazowieckie、SKM、Koleje Śląskie、Dolnośląskie、Wielkopolskie、Małopolskie、ŁKA、Arriva…)、PKSバス、FlixBus、約25都市の都市交通機関を、ひとつの乗り換え検索で利用できます。APIキー不要、登録不要、無料。使用するのは、運行会社や管理機関のオープンデータのみです。

質問例
  • 「明日9:00にヴロツワフからザコパネへ行くにはどうすればいい?」
  • 「グディニャ・オルウォボからグダニスク工科大学まで、最速の行き方は?」
  • 「金曜日の16:00以降、ポズナンからワルシャワまでのICはいくら?」
  • 「クラクフ・ロンド・モギルスキ停留所から今出発する便は?」
  • 「ポドハラニン号はどのルートを走り、どれくらい遅れていますか?」
  • 「18:36にポズナン中央駅を出る列車に乗ります。間に合うには、ニェプルシェボから何時のバスに乗ればいい?」

できること

ツール用途
plan_journeyA → B の列車 ↔ バスの乗り換えを含む経路。「〜以降に出発」または「〜までに到着」、乗り換え回数の上限、交通手段を指定できます。場所には駅、都市全体(「クラクフ」)、座標を指定できます。
departuresホームと遅延を含む発着案内。「ポズナン方面のみ」などの絞り込みもできます。
trip_details列車の全行程(番号:3510、IC 3510、名前:Podhalanin、またはrefで検索)を、各駅での遅延、運休、迂回情報とともに表示します。
find_stops / nearby_stops駅の検索(入力ミスやポーランド語のアクセント記号なしでも検索可能)と、指定地点周辺の停留所の検索。
rail_disruptionsPKP PLKの鉄道運行情報:線路の閉鎖、代行輸送(ZKA)、運休、故障、速度制限など、PKP PLKの公式情報を表示します。影響を受ける列車には、plan_journey、departures、trip_detailsでも⚠が付きます。公開サーバーでは有効です。ローカルで使用するには、無料のPLKキーが必要です。
weather_warnings場所の郡を対象とするIMGWの気象警報(雷雨、強風、凍結、猛暑、降雪)と洪水警報を表示します。plan_journeyは出発地と目的地の警報も自動で追加します。
data_sources読み込み済みデータ、有効期限、ライセンス、必要な帰属表示を確認できます。
カバー範囲(デフォルト): PKP PLK が調整するすべての鉄道事業者(PKP Intercity、Polregio、Koleje Mazowieckie、SKM Trójmiasto、SKM Warszawa、Koleje Śląskie、Dolnośląskie、Wielkopolskie、Małopolskie、ŁKA、Arriva、RegioJet、Leo Express)に加え、WKD、**PKS Poznań、PKS Kalisz とカリシュのバス事業者、Sindbad、Kombus、FlixBus/FlixTrain(ポーランド発着の路線)**です。約25都市の公共交通機関(ワルシャワ、クラクフ、ウッチ、ポズナン、トリシティ、GZM、シュチェチン、ルブリン、ビャウィストク、ビドゴシュチュ、レグニツァなど)も対象です。公開サーバーでは有効になっており、ローカルでは任意で有効にできます。都市の停留所は、都市名を含めて検索できます:「Kraków Rondo Mogilskie」、「Warszawa Politechnika」。全リスト:feeds/feeds.json。

リアルタイムの遅延情報:すべての列車(PKP PLK のデータ)と、クラクフ、ポズナン、グダニスク、シュチェチンの公共交通機関(GTFS-Realtime)。鉄道の運行障害(故障、線路閉鎖、代行輸送、運休)は、PKP PLK のオープン鉄道データから直接取得します。公開サーバーではすぐに利用できます。ローカルでは無料のキー ROZKLAD_PLK_API_KEY を設定してください。

料金: plan_journey は、PKP Intercity(TLK/IC は線路上の距離に基づき、EIC/EIP は駅の組み合わせに基づく)および Polregio、Koleje Mazowieckie、Śląskie、Dolnośląskie、Małopolskie、ŁKA、Arriva(普通運賃、2等、距離に基づく)について、事業者の公式料金表に基づく料金を表示します。距離が料金区分の境界に近い場合は、例として68~69ズウォティのように幅を持たせて表示します。データ上の線路距離は、運賃計算上の距離と数km異なるためです。これは普通乗車券の上限価格(割引やキャンペーンを含まない)です。実際の販売価格は、多くの場合これより安くなります。PKP IC の割引、地域別運賃(例:Taryfa Pomorska、Małopolska)、事業者の各種割引が適用されるためです。料金表は、オープンデータ法第5条に基づき利用する公開情報です。更新方法:npm run build-fares -- <cennik.pdf> <url> <obowiązuje-od>(PKP IC)および python3 scripts/build-regional-fares.py(地域の事業者)。正確な料金と乗車券: 鉄道の各接続について、plan_journey は同じ経路と時刻で検索できるKoleo(すべての鉄道事業者の乗車券を販売)の検索リンクを表示します。そこでキャンペーン適用後の最新料金を確認し、乗車券を購入できます。サーバーは事業者の販売サイトから料金を取得しません(そのためのオープン API がなく、販売サイトへの自動アクセスは利用規約に違反するためです)。ただし、ブラウザーを使えるエージェント(Claude in Chrome や Playwright MCP など)であれば、依頼に応じてこのリンクを開き、料金を読み取れます。ご自身で確認するのと同じです。料金情報がないもの:公共交通機関、バス、SKM、Koleje Wielkopolskie(最新の料金表が見つかりませんでした)です。PR は歓迎します。

最速で利用する方法:公開サーバー(インストール不要)

MCP アドレス:https://rozklad.compabase.com/mcp(Streamable HTTP、ログイン不要、IP ごとに毎分60リクエストまで)。

  • Claude(ウェブ/デスクトップ): 設定 → Connectors → Add custom connector → アドレスを貼り付けます。
  • ChatGPT: Settings → Connectors(開発者モード)→ このアドレスを使って MCP サーバーを追加します。
  • Claude Code: claude mcp add --transport http rozklad https://rozklad.compabase.com/mcp
  • Cursor / VS Code: {"mcpServers": {"rozklad": {"url": "https://rozklad.compabase.com/mcp"}}}

サーバーは Compabase がプロボノでホストしており、すべてのフィード(列車、PKS、FlixBus、公共交通機関)を利用できます。頻繁に利用する場合は、ローカルで実行してください(下記参照)。

プライバシー:公開サーバーで集計するのは、日ごとの統計のみです。各ツールの利用回数と結果(例:「場所が見つかりません」)、MCP クライアント名、ユニークユーザー数を集計します(ソルトは毎日変更し、メモリ上だけに保持します)。IP アドレス、座標、経路は保存しません。確認先:/stats。

ローカルインストール

Node.js ≥ 20 が必要です。パッケージが npm に公開されるまでは、以下のコマンドで rozklad-mcp の代わりに github:ContentWriterco/rozklad-mcp を使用してください(例:npx -y github:ContentWriterco/rozklad-mcp)。初回起動時に約 40 MB の時刻表をダウンロードします(以降はキャッシュされ、12 時間ごとに自動更新されます)。

Claude Desktop

Settings → Developer → Edit Config を開き、次の内容を追加します。

{
  "mcpServers": {
    "rozklad": {
      "command": "npx",
      "args": ["-y", "rozklad-mcp"]
    }
  }
}
Claude Code
claude mcp add rozklad --scope user -- npx -y rozklad-mcp
Cursor / Windsurf

~/.cursor/mcp.json(Windsurf の場合:~/.codeium/windsurf/mcp_config.json)に、Claude Desktop と同じ JSON を設定します。

VS Code (Copilot)

.vscode/mcp.json:

{ "servers": { "rozklad": { "type": "stdio", "command": "npx", "args": ["-y", "rozklad-mcp"] } } }
OpenAI Codex CLI

~/.codex/config.toml:

[mcp_servers.rozklad]
command = "npx"
args = ["-y", "rozklad-mcp"]
tool_timeout_sec = 120
リモート(HTTP)– ChatGPT、クラウドエージェント、n8n
npx -y rozklad-mcp --http --port 3000 --host 0.0.0.0
# endpoint: http://twoj-serwer:3000/mcp   (Streamable HTTP, bezstanowy)   health: /health

または Docker:

docker build -t rozklad-mcp .
docker run -p 3000:3000 -v rozklad-cache:/data rozklad-mcp
ソースコードから
git clone https://github.com/ContentWriterco/rozklad-mcp && cd rozklad-mcp
npm install && npm run build
node dist/index.js plan "Zbąszyń" "Kraków" --date jutro --time 7:00

設定

環境変数(クライアントの JSON では "env": { "ROZKLAD_FEEDS": "trains,regional,city:Poznań" } のように設定します):

変数デフォルト説明
ROZKLAD_FEEDStrains,regionalグループ(trains、regional/pks、city)、個別フィード(warszawa)、都市(city:Kraków)、地域(region:wielkopolskie)、all、除外(-sindbad)。
ROZKLAD_EXTRA_FEEDS–独自の GTFS ファイル:moj-pks=https://…/gtfs.zip;inny=https://…
ROZKLAD_FEEDS_FILE–独自のフィードレジストリ(例:特定の地域向けフォークで使用)。
ROZKLAD_MIN_TRANSFER4最小乗り換え時間(分)。
ROZKLAD_MAX_WALK_M500乗り換え時に停留所間を徒歩で移動できる最大距離。
ROZKLAD_REFRESH_HOURS12時刻表の更新を確認する間隔。
ROZKLAD_LIVE10 にすると、リアルタイムの遅延情報を無効にします。
ROZKLAD_CACHE_DIRシステムキャッシュダウンロードした時刻表の保存先。
ROZKLAD_PLK_API_KEY–Otwartych Danych Kolejowych PKP PLK のキー。有効にすると、運行障害情報と代替輸送情報を利用できます。
ROZKLAD_CONN_CACHE_MB400以降の日付の接続テーブルに使用するメモリの上限。
ROZKLAD_STATS–HTTP モード:1 = /stats で匿名の日次使用回数を記録します。

メモリ: デフォルトの構成(鉄道+PKS)では約 300~500 MB の RAM と、起動に約 10 秒が必要です。大都市の公共交通機関はより多くのリソースを必要とします(Warszawa は約 +250 MB、全都市では合計約 1.2 GB、起動に約 70 秒)。そのため、ローカルでは trains,regional,city:Warszawa のように必要なものだけを有効にしてください。

CLI(エージェントなし)

rozklad-mcp plan "Warszawa" "Gdańsk" --date piątek --time 16:00
rozklad-mcp plan "Zbąszyń" "Gdańsk Główny" --time 9:00 --arrive-by
rozklad-mcp departures "Poznań Główny" --direction Wrocław --duration 180
rozklad-mcp trip "IC 3510" --date jutro
rozklad-mcp stops "szklarska"
rozklad-mcp sources

データの出典(そして API キーが不要な理由)

すべてのデータは、運行事業者および管理者が公開しているオープンデータ(公共部門情報の再利用、Krajowy Punkt Dostępowy MMTIS)に基づいています。

サーバーは運行事業者のウェブサイトをスクレイピングしません。応答には、必要なデータソースの帰属表示が含まれます。データが不完全な場合もあります(例:直前の変更、バスによる代替輸送)。重要な旅行の前には、運行事業者に確認してください。

お使いのPKSや都市が見つかりませんか? 🙋

これは最も簡単で、最も価値のある協力方法です。ほとんどのPKSはまだデータを公開していませんが、公開する事業者は増えています(EU規則2017/1926)。GTFSファイルへのリンクをご存じの場合は、次の手順でご協力ください。

  1. feeds/feeds.json にエントリーを追加します(テンプレートは CONTRIBUTING.md にあります)。
  2. npm run check-feeds を実行して、リンクが有効か確認します。
  3. プルリクエストを作成します。

プログラミングができなくても大丈夫です。リンクまたは会社名を添えて、「Add carrier(運行事業者を追加)」の課題を作成してください。または、事業者にGTFSをKPDで公開するよう連絡してください。

協力者を募集しています: ヴロツワフ(自動ダウンロードを妨げています)、ジェロナ・グラ(KPDのリンクが機能しません)、レシュノ(KPDのリンクが機能しません)、オルシュティン、チェンストホヴァ、ポーランド全土のPKS、各都市のGTFS-Realtime、Koleje Wielkopolskieの最新運賃表。

仕組み

  • GTFS(列車+バス+都市)をメモリ上で1つのネットワークに統合します。同じ駅の停留所をグループ化し、半径500 m以内の停留所を徒歩リンクで結びます。そのため、駅で列車とPKSを乗り換えられます。
  • 経路検索には、多基準版のConnection Scan Algorithm(到着時刻 × 乗り換え回数)を使用します。ポーランド全土の検索も数十ミリ秒で完了します。
  • 遅延情報:PKP PLKのJSONデータ(列車)と、各都市のGTFS-Realtime(依存関係のない独自のprotobufデコーダー)を使用し、60~90秒キャッシュします。
  • ネイティブ依存関係はゼロです(macOS/Windows/Linux/ARMで動作)。TypeScriptは約3,000行で、理解や拡張が容易です。

開発

npm install
npm test            # build + testy (bez internetu, na syntetycznej sieci)
npm run check-feeds # czy wszystkie linki w rejestrze działają
ROZKLAD_LOG=debug node dist/index.js plan "A" "B"

開発アイデア:県別運賃(ポモルスキ県、マウォポルスカ県、クヤヴィ=ポモージェ県)や市内交通の運賃、経路検索でのリアルタイム遅延情報、ルートマップ(shapes)、起動を高速化する永続インデックス。

ライセンス

コード:MIT。データ:各データソースのライセンスに従います。data_sources と feeds/feeds.json を参照してください。このプロジェクトは独立しており、Grupa PKPおよび各運行事業者とは関係ありません。


English

アニメーション:ユーザーがZbąszyńからKórnikへの行き方をAIアシスタントに尋ね、アシスタントがrozklad-mcpを使い、IC列車、短い徒歩区間、PKSバスを時刻と料金とともに案内します

rozklad-mcp は、AI アシスタントとエージェントにポーランドの公共交通機関の時刻表を提供する MCP サーバーです。対象は、ポーランド国内の全列車(PKP PLK が運行を管轄するすべての事業者 ― PKP Intercity、Polregio、Koleje Mazowieckie、SKM、地域鉄道)、オープンデータを公開する PKS/地域バス、ポーランド発着の FlixBus/FlixTrain、約25都市(ワルシャワ、クラクフ、ウッチ、ポズナン、グダニスク/グディニャ、シレジア GZM、シュチェチン、ルブリン、ビャウィストクなど)の都市交通です。

  • plan_journey – 列車 ↔ バス ↔ トラムの乗り換え、出発時刻以降/到着時刻まで、座標を出発地・目的地として指定する条件に対応した複数条件での経路検索。PKP Intercity および地域鉄道事業者が公表する運賃表の料金に加え、正確な現行料金とチケットを確認できる Koleo へのリンクも提供します
  • departures – ホームと遅延を含むリアルタイムの出発案内
  • trip_details – 列車またはバスの全経路と、リアルタイムの遅延・運休情報(列車、およびクラクフ、ポズナン、グダニスク、シュチェチンの都市交通)
  • rail_disruptions – PKP PLK の公式運行障害情報:故障、線路閉鎖、代行バス、運休(影響を受ける列車にはすべての回答で ⚠ が表示されます)
  • weather_warnings – 場所が属する郡を対象とした IMGW-PIB の公式気象・洪水警報(経路にも自動的に追加されます)
  • find_stops、nearby_stops、data_sources

30秒で試す: https://rozklad.compabase.com/mcp を Claude または ChatGPT のカスタムコネクターとして追加するか、claude mcp add --transport http rozklad https://rozklad.compabase.com/mcp を実行してください。ローカルで使用する場合は、任意の MCP クライアントで npx -y rozklad-mcp(stdio)を実行するか、Streamable HTTP エンドポイントを使用するには --http を指定してください。API キーは不要です。オープンな GTFS データを使用します(mkuran.pl 経由の PKP PLK、各事業者および都市独自のフィード)。駅名はポーランド語のダイアクリティカルマークがあってもなくても指定できます。町の名前だけを指定すると、その町にあるすべての停留所が対象になります。

プロンプトの例:「明日の午前9時までにヴロツワフからザコパネへ行くにはどうすればいいですか?」、「今、クラクフのRondo Mogilskieから出発する便は何ですか?」、「金曜の夜、ポズナンからワルシャワまでのICはいくらですか?」

新しいフィードの追加に関する貢献を歓迎します。CONTRIBUTING.md をご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。