NestDaddy

Rhein-Ruhr Fahrplan MCP

io.github.MarcProe/rhein-ruhr-fahrplan-mcp · v1.2.2

Public transit data for the Rhein-Ruhr region: live departures, trips, disruptions, GTFS schedules.

Connect Runs on your machine

Terminal
claude mcp add rhein-ruhr-fahrplan-mcp -e FAHRPLAN_AGENCY_IDS=<FAHRPLAN_AGENCY_IDS> -e FAHRPLAN_OPERATOR=<FAHRPLAN_OPERATOR> -e FAHRPLAN_DEFAULT_START=<FAHRPLAN_DEFAULT_START> -- uvx rhein-ruhr-fahrplan-mcp==1.2.2
claude_desktop_config.json
{
  "mcpServers": {
    "rhein-ruhr-fahrplan-mcp": {
      "command": "uvx",
      "args": [
        "rhein-ruhr-fahrplan-mcp==1.2.2"
      ],
      "env": {
        "FAHRPLAN_AGENCY_IDS": "<FAHRPLAN_AGENCY_IDS>",
        "FAHRPLAN_OPERATOR": "<FAHRPLAN_OPERATOR>",
        "FAHRPLAN_DEFAULT_START": "<FAHRPLAN_DEFAULT_START>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "rhein-ruhr-fahrplan-mcp": {
      "command": "uvx",
      "args": [
        "rhein-ruhr-fahrplan-mcp==1.2.2"
      ],
      "env": {
        "FAHRPLAN_AGENCY_IDS": "<FAHRPLAN_AGENCY_IDS>",
        "FAHRPLAN_OPERATOR": "<FAHRPLAN_OPERATOR>",
        "FAHRPLAN_DEFAULT_START": "<FAHRPLAN_DEFAULT_START>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "rhein-ruhr-fahrplan-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "rhein-ruhr-fahrplan-mcp==1.2.2"
      ],
      "env": {
        "FAHRPLAN_AGENCY_IDS": "<FAHRPLAN_AGENCY_IDS>",
        "FAHRPLAN_OPERATOR": "<FAHRPLAN_OPERATOR>",
        "FAHRPLAN_DEFAULT_START": "<FAHRPLAN_DEFAULT_START>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
FAHRPLAN_AGENCY_IDS
Optional
Comma-separated GTFS agency IDs to enable the schedule database (e.g. 'nia-25'). Without it the server runs live-only; schedule tools return a configuration hint. An unfiltered import would create a ~500 MB database and is intentionally not the default.
FAHRPLAN_OPERATOR
Optional
Optional: filter live departures/arrivals by operator code (e.g. 'NIAG'). Empty = all operators.
FAHRPLAN_DEFAULT_START
Optional
Optional: default start stop (DHID like 'de:05154:35739', EFA ID or unique name), available via the get_default_start tool.

Details

Package[email protected] (PYPI, stdio)
First published6 Oct 2026
Last updated6 Oct 2026
Registry nameio.github.MarcProe/rhein-ruhr-fahrplan-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.