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.sh规划两个地点之间的行程
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(兴趣点)
  • 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. 路线规划

规划两个车站之间的行程:

./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

提示: 请始终使用 ./search.sh 查找正确的车站 ID。


交通类型

代码类型
ICE/RJ/RJX高速列车
IC/EC城际列车/欧洲城际列车
REX/R区域快车/区域列车
SS-Bahn(市郊铁路)
UU-Bahn(维也纳地铁)
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. 跨境出行:部分路线延伸至邻国(德国、捷克等)。

评论

支持 Markdown