Skip to main content

oebb-mcp-server

PyPI Python License: MIT

MCP server for OeBB (Austrian Federal Railways) train data. Query Austrian train stations, departures, connections, and service alerts directly from LLMs via the Model Context Protocol.

Installation

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "oebb": {
      "command": "uvx",
      "args": ["oebb-mcp-server"]
    }
  }
}

Claude Code

claude mcp add oebb -- uvx oebb-mcp-server

From source (development)

{
  "mcpServers": {
    "oebb": {
      "command": "uvx",
      "args": ["--from", "/path/to/oebb-mcp-server", "oebb-mcp-server"]
    }
  }
}

Tools

search_station

Search OeBB stations by name. Returns matching stations with IDs, coordinates, and types.

Parameter Type Default Description
query string required Station name (e.g. "Wien Hbf")
max_results int 10 Maximum results

station_board

Fetch live departures or arrivals at a station. Provide either station_id or station_name.

Parameter Type Default Description
station_id string OeBB station ID (e.g. "1190100")
station_name string Station name (auto-resolved)
board_type string "DEP" "DEP" for departures, "ARR" for arrivals
max_journeys int 10 Maximum journeys

trip_search

Search train connections between two stations. Supports time planning and direct-only filtering.

Parameter Type Default Description
from_station_id string Departure station ID
from_station_name string Departure station name
to_station_id string Arrival station ID
to_station_name string Arrival station name
max_connections int 5 Maximum connections
time string now ISO 8601 time (e.g. "2026-04-15T08:00:00")
time_mode string "departure" "departure" or "arrival"
direct_only bool false Only direct connections

service_alerts

Fetch current OeBB service alerts and disruptions.

Parameter Type Default Description
max_alerts int 20 Maximum alerts
product_filter int 65535 Product bitmask (1=ICE/RJX, 2=IC/EC, 4=NJ, 8=D/EN, 16=REX/R, 32=S-Bahn, 64=Bus, 128=Ferry, 256=U-Bahn, 512=Tram, 4096=private operators like Westbahn/RegioJet, 65535=all)

Development

# Install dependencies
uv sync

# Lint & format
ruff check .
ruff format .

# Run unit tests
pytest tests/ -v -m "not integration"

# Run integration tests (hits real OeBB API)
pytest tests/ -v -m integration

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oebb_mcp_server-0.2.0.tar.gz (108.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

oebb_mcp_server-0.2.0-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file oebb_mcp_server-0.2.0.tar.gz.

File metadata

  • Download URL: oebb_mcp_server-0.2.0.tar.gz
  • Upload date:
  • Size: 108.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for oebb_mcp_server-0.2.0.tar.gz
Algorithm Hash digest
SHA256 bc57d9d3e656ecb440d14353950ad03e92d663a7a9d4d635d3aa4f361b2c207b
MD5 783d3d5b0adfe59cc42c389a487eab89
BLAKE2b-256 28e27622ba78442fac92677a28f1bbced74e3cea027389c5251b828c19483f3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for oebb_mcp_server-0.2.0.tar.gz:

Publisher: release.yml on slettmayer/oebb-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oebb_mcp_server-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: oebb_mcp_server-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for oebb_mcp_server-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0beebda9cf7165e041a6ba67bbb6a16b2241c7e376ea67f5a14ddf53bc44e9ec
MD5 9a77a29ffa110190a3cedfe438200636
BLAKE2b-256 efda83299178e1dbb2d8b7805cbde02fee0bb42ea5b823dfa36389d0c7318f87

See more details on using hashes here.

Provenance

The following attestation bundles were made for oebb_mcp_server-0.2.0-py3-none-any.whl:

Publisher: release.yml on slettmayer/oebb-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page