慕尼黑 MVG & S-Bahn 实时追踪命令行工具 - Openclaw Skills

作者:互联网

2026-03-30

AI教程

什么是 慕尼黑公共交通 (MVG) 命令行工具?

MVG CLI 技能为慕尼黑公共交通系统提供了一个全面的终端界面。它利用非官方的 MVG API 获取实时离站信息、规划路线并定位附近站点,且无需身份验证。此集成是 Openclaw Skills 生态系统的一部分,使开发人员和用户能够通过代码或命令行提示符直接与慕尼黑的交通网络进行交互。

除了基本的时间表功能外,它还通过 WebSocket 提供与 S-Bahn 实时追踪的深度集成,为列车提供精确的位置数据。无论您是在为日常通勤构建自动化工具,还是将交通数据集成到自定义仪表板中,此技能都能简化对慕尼黑 U-Bahn、S-Bahn、电车和巴士网络的访问。

下载入口:https://github.com/openclaw/skills/tree/main/skills/lars147/mvg-cli

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install mvg-cli

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 mvg-cli。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

慕尼黑公共交通 (MVG) 命令行工具 应用场景

  • 从终端检查实时 U-Bahn 和 S-Bahn 离站时间。
  • 规划慕尼黑各站点或特定地址之间的多模式路线。
  • 通过 WebSocket 流监控实时 S-Bahn 位置和延迟。
  • 根据 GPS 坐标定位最近的交通站点。
  • 获取特定线路的服务警报和中断通知。
慕尼黑公共交通 (MVG) 命令行工具 工作原理
  1. 该技能与用于位置、离站和路由的非官方 MVG API 端点进行交互。
  2. 用户发出诸如 mvg departures 或 mvg route 之类的命令来触发数据检索。
  3. 对于实时 S-Bahn 追踪,该技能会初始化一个指向 geOps 的 Node.js WebSocket 连接。
  4. 数据经过处理后以易于阅读的格式或 JSON 返回,以便进一步自动化。
  5. 高级过滤器允许用户根据交通类型、步行速度或无障碍要求缩小结果范围。

慕尼黑公共交通 (MVG) 命令行工具 配置指南

要开始使用此交通技能,请确保已安装 Python 3。对于实时 S-Bahn 追踪,需要 Node.js 和 ws 模块。Openclaw Skills 用户应确保脚本在其环境路径中可访问。

# 基础 CLI 设置
python3 mvg_cli.py

# 安装 S-Bahn 实时追踪的 WebSocket 依赖
npm install ws

慕尼黑公共交通 (MVG) 命令行工具 数据架构与分类体系

该技能主要通过 JSON 响应组织数据,以便于解析。以下是此工具中使用的关键数据结构:

组件 数据类型 描述
位置 JSON 数组 站点名称、ID 和地理坐标。
离站 JSON 对象 时间戳、线路编号和以分钟为单位的延迟信息。
路线 嵌套 JSON 路径详情,包括步行时间、换乘以及计划的到达/离站时间。
S-Bahn 实时 WebSocket 提要 实时坐标更新和以毫秒为单位的延迟偏移。
name: mvg
description: Munich public transport (MVG) CLI and S-Bahn live tracking. Use for departure times, route planning, nearby stations, service alerts, and real-time S-Bahn positions. Trigger when the user mentions MVG, S-Bahn, U-Bahn, Munich transit, departures, connections, Abfahrten, Verbindungen, or specific line names like S8, U3, etc.

MVG CLI

Munich public transport from the terminal. Uses the unofficial MVG API (bgw-pt/v3) — no auth needed.

Setup

  • CLI: python3 /mvg_cli.py
  • Dependencies: Python 3, urllib (stdlib only)
  • S-Bahn Live: Requires node + ws module for WebSocket connection

Commands

# Station search
mvg search "Marienplatz"

# Departures
mvg departures "Marienplatz"
mvg departures "Marienplatz" --type ubahn --limit 20
mvg departures "Daglfing" --offset 5          # +5min walking time

# Route planning (stations or addresses)
mvg route "Marienplatz" "Garching"
mvg route "Hauptstr. 1, München" "Flughafen"  # address support
mvg route "Pasing" "Ostbahnhof" --time "08:30" --mode less-changes

# Nearby stations
mvg nearby                                     # default coords
mvg nearby 48.1351 11.5820

# Service alerts
mvg alerts
mvg alerts --station "Marienplatz"

# Lines
mvg lines --type sbahn

# S-Bahn live tracking (real-time via geOps WebSocket)
mvg live                                       # all S-Bahn lines
mvg live --line S3                             # specific line

All commands support --json for machine-readable output.

Transport Type Filters

Use with --type or --exclude: ubahn, sbahn, bus, tram, bahn (RE/RB), regionalbus, ruftaxi

Route Options

  • --mode: fast (default), less-changes, less-walking
  • --walk-speed: slow, normal (default), fast
  • --accessible: wheelchair-accessible routes only
  • --via "Station": route via intermediate stop
  • --arrive: interpret --time as arrival time

API Notes

  • Base URL: https://www.mvg.de/api/bgw-pt/v3/
  • Endpoints: /locations, /departures, /routes, /stations/nearby, /lines, /messages
  • Arrival time in route responses: use to.plannedDeparture (not plannedArrival)
  • S-Bahn live: wss://api.geops.io/realtime-ws/v1/ with GET sbm_full + SUB sbm_full + BBOX
  • Delays from geOps are in milliseconds