mcpField
A
anachb

anachb

github.com/mitsuhiko生産性3.2k103 回インストール4 週間前に更新
リポジトリ

anachb について

HAFAS API を通じてオーストリアの公共交通を調べるコマンドラインスキルです。駅検索、リアルタイムの発車情報、経路計画、運行障害の確認に対応します。

主な機能

  1. 01駅と停留所の検索
  2. 02リアルタイム発車時刻と遅延の確認
  3. 03地点間の経路計画
  4. 04カテゴリ別の運行障害表示

活用シーン

  1. 01交通情報の問い合わせ前に駅 ID を特定
  2. 02駅の発車時刻と遅延を確認
  3. 03オーストリア内の地点間で経路を比較
  4. 04列車やバスの運行障害を確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mitsuhiko/agent-stuff --skill anachb

インストール後、Claude Code で/anachbを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

departures.sh
disruptions.sh
route.sh
search.sh

詳細

VOR AnachB - オーストリアの公共交通機関 API

HAFAS API を使って、オーストリアの公共交通機関のリアルタイム出発情報、経路検索、運行障害を照会します。

クイックリファレンス

スクリプト用途
search.sh名前から駅・停留所を検索
departures.sh駅のリアルタイム出発情報
route.sh2地点間の経路を検索
disruptions.sh現在の運行障害

API: HAFAS(Hacon Fahrplan-Auskunfts-System)
エンドポイント: https://vao.demo.hafas.de/gate


1. 駅・停留所を検索

名前から駅 ID を検索します。

./search.sh "Stephansplatz"
./search.sh "Wien Hauptbahnhof"
./search.sh "Linz"
./search.sh "Salzburg Hbf"

駅名、ID(extId)、座標を返します。

レスポンスフィールド:

  • name:駅名
  • extId:ほかの照会で使用する駅 ID
  • type:S(駅)、A(住所)、P(POI)
  • coordinates:WGS84 座標(1e-6 形式の経度・緯度)

2. リアルタイム出発情報

駅から次に出発する便を取得します。

./departures.sh <station-id> [count]

# Examples:
./departures.sh 490132000        # Wien Stephansplatz, 10 departures
./departures.sh 490132000 20     # Wien Stephansplatz, 20 departures
./departures.sh 490060200        # Wien Hauptbahnhof
./departures.sh 444130000        # Linz Hbf
./departures.sh 455000100        # Salzburg Hbf

レスポンスフィールド:

  • line:路線名(U1、S1、RJ など)
  • direction:最終目的地
  • departure:予定出発時刻
  • delay:遅延時間(分、該当する場合)
  • platform:ホーム・線路番号

3. 経路検索

2つの駅間の経路を検索します。

./route.sh <from-id> <to-id> [results]

# Examples:
./route.sh 490132000 490060200        # Stephansplatz → Hauptbahnhof
./route.sh 490132000 444130000 5      # Wien → Linz, 5 results
./route.sh "Graz Hbf" "Wien Hbf"      # Search by name (slower)

レスポンスフィールド:

  • departure:出発時刻
  • arrival:到着時刻
  • duration:所要時間
  • changes:乗り換え回数
  • legs:路線情報を含む移動区間の配列

4. 運行障害

現在の運行障害を確認します。

./disruptions.sh [category]

# Examples:
./disruptions.sh            # All disruptions
./disruptions.sh TRAIN      # Train disruptions only
./disruptions.sh BUS        # Bus disruptions only

主な駅 ID

駅ID
Wien Stephansplatz490132000
Wien Hauptbahnhof490134900
Wien Westbahnhof490024300
Wien Praterstern490056100
Wien Karlsplatz490024600
Wien Schwedenplatz490119500
Linz Hbf444116400
Salzburg Hbf455000200
Graz Hbf460086000
Innsbruck Hbf481070100
Klagenfurt Hbf492019500
St. Pölten Hbf431543300
Wiener Neustadt Hbf430521000
Krems a.d. Donau431046400

ヒント: 正しい駅 ID を見つけるには、必ず ./search.sh を使ってください。


交通機関の種類

コード種類
ICE/RJ/RJX高速列車
IC/ECインターシティ/ユーロシティ
REX/R地域急行/普通列車
SS バーン(近郊鉄道)
UU バーン(ウィーン地下鉄)
STR路面電車/Straßenbahn
BUSバス
ASTデマンド型交通

API の詳細(上級者向け)

スクリプトは HAFAS JSON API を使用します。独自の照会を行う場合は、次のとおりです。

curl -s -X POST "https://vao.demo.hafas.de/gate" \
  -H "Content-Type: application/json" \
  -d '{
    "svcReqL": [{
      "req": { ... },
      "meth": "METHOD_NAME",
      "id": "1|1|"
    }],
    "client": {"id": "VAO", "v": "1", "type": "AND", "name": "nextgen"},
    "ver": "1.73",
    "lang": "de",
    "auth": {"aid": "nextgen", "type": "AID"}
  }'

利用可能なメソッド:

  • LocMatch - 場所・駅の検索
  • StationBoard - 出発・到着情報
  • TripSearch - 経路検索
  • HimSearch - 運行障害・運行情報の検索
  • JourneyDetails - 特定の移動の詳細

ヒント

  1. まず駅 ID を検索する: 出発情報や経路を照会する前に、必ず search.sh を使って正しい駅 ID を見つけてください。

  2. 駅と停留所の違い: 大きな駅には複数のホームがあります。駅のメイン ID で、すべてのホームを指定できます。

  3. リアルタイムデータ: 利用可能な場合、出発情報にはリアルタイムの遅延が含まれます。

  4. オーストリア全域: この API はウィーンだけでなく、オーストリア全域の公共交通機関を対象としています。

  5. 国境を越える移動: ドイツ、チェコ共和国など、近隣諸国まで運行する路線もあります。

コメント