公共交通查询服务

一个通过hafas-client提供欧洲公共交通查询的服务,支持50多个铁路和公交运营商,无需API密钥。

  • by McCullonas
  • JavaScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 McCullonas/mcp-hafas-european

使用说明

mcp哈法斯欧洲

用于欧洲公共交通查询的MCP服务器 哈法斯客户. 支持欧洲50多家铁路和交通运营商(以及美国的一些运营商)-无需API密钥。

状态: 准备就绪


先决条件

  • 包子 运行时间(curl -fsSL https://bun.sh/install | bash)
  • 不需要API密钥-使用可公开访问的HAFAS端点

安装

git clone git@github.com:McCullonas/mcp-hafas-european.git
cd mcp-hafas-european
bun install

支持的运营商

50多名操作员可通过 operator 参数:

代码 操作员 国家
db 德国联邦铁路🇩🇪 德国
oebb 奥比 🇦🇹 奥地利
sbb SBB(通过哈法斯) 🇨🇭 瑞士
sncb SNCB/NMBS 🇧🇪 比利时
pkp PKP城际 🇵🇱 波兰
rejseplanen Rejsepanen 🇩🇰 丹麦
irish-rail 爱尔兰铁路🇮🇪 爱尔兰
cfl CFL 🇱🇺 卢森堡
bvg BVG柏林🇩🇪 德国
vbb VBB柏林勃兰登堡🇩🇪 德国
rmv RMV(法兰克福地区) 🇩🇪 德国
bart 湾区快速交通🇺🇸 美国

跑 hafas_list_operators 查看完整列表。


可用工具

hafas_list_operators

列出所有可用的运营商配置文件及其代码、名称和国家。

没有参数。

hafas_search_stations

在特定运营商的网络中按名称搜索电台。

参数:

  • operator --操作员代码(例如。 "db", "oebb")
  • query --要搜索的站名(例如。 "Frankfurt", "Wien Hauptbahnhof")
  • results (可选) --最大结果(默认值5)

hafas_get_departures

获取即将从车站出发的航班。

参数:

  • operator --操作员代码
  • stationId --车站ID(来自 hafas_search_stations)
  • when (可选) --ISO 8601日期时间(默认值:现在)
  • duration (可选) --时间跨度(分钟)(默认值60)

返回:线路名称、目的地、计划/实际时间、延迟、平台号。

hafas_get_arrivals

在车站接收即将到来的乘客。

参数:

  • operator --操作员代码
  • stationId --车站ID
  • when (可选) --ISO 8601日期时间
  • duration (可选) --时间跨度(分钟)

hafas_get_journeys

计划两个车站之间的行程,包括转机和换乘。

参数:

  • operator --操作员代码
  • fromId --始发站ID
  • toId --目的站ID
  • when (可选) --出发日期(ISO 8601)
  • results (可选) --行程选项数量(默认3)

返回:路线、航段、换乘信息、持续时间、延误、站台号。


MCP客户端配置

添加到您的 settings.json:

{
  "mcpServers": {
    "hafas-european": {
      "command": "bun",
      "args": ["run", "/path/to/mcp-hafas-european/src/index.ts"]
    }
  }
}

不需要环境变量。


发展

# Run directly
bun run src/index.ts

# Build
bun build src/index.ts --outdir dist --target node

数据源

此服务器使用 哈法斯客户 通过 德赫斯特,连接到可公开访问的HAFAS 由每个交通管理局运营的端点。使用受每个运营商条款的约束。


许可证

麻省理工学院