Skip to main content
Glama
mirodn

mcp-server-public-transport

mcp-server-public-transport

Ein MCP-Server, der Echtzeitdaten des öffentlichen Nahverkehrs in ganz Europa bereitstellt.

Über

mcp-server-public-transport ist ein Model Context Protocol (MCP)-kompatibler lokaler Server, der Zugriff auf Daten des öffentlichen Nahverkehrs in ganz Europa bietet. Derzeit integriert er APIs aus Großbritannien, der Schweiz, Norwegen, Belgien sowie Berlin/Brandenburg und ermöglicht es Ihnen, Zugverbindungen, Live-Abfahrten und Busstandorte abzurufen.

Related MCP server: Berlin Transport MCP Server

Status der Funktionsimplementierung

Unterstützte Länder

Land

API-Basis-URL

Status

Großbritannien

https://transportapi.com

Schweiz

https://transport.opendata.ch

Belgien

https://api.irail.be

Norwegen

https://api.entur.io

Berlin/Brandenburg

https://v6.vbb.transport.rest

Funktionen nach Land

Funktion

API-Pfad

Status

Großbritannien

Live-Abfahrten

/uk/train/station_timetables/{station_code}.json

Schweiz

Verbindungen suchen

/connections

Bahnhofssuche

/locations

Abfahrtstafel

/stationboard

Bahnhöfe in der Nähe

/locations?x={lon}&y={lat}

Belgien

Live-Abfahrten

/departures

Bahnhofssuche

/stations

Bahnhöfe in der Nähe

/stations/nearby

Norwegen

Ortssuche

/geocoder/v1/autocomplete

Live-Abfahrten

GraphQL: stopPlace(id) { estimatedCalls(...) }

Reiseplanung

GraphQL: trip(from, to, dateTime, numTripPatterns, ...)

Nächstgelegene Haltestellen

GraphQL: nearest(latitude, longitude, maximumDistance, ...)

Berlin/Brandenburg

Ortssuche

/locations

Live-Abfahrten

/stops/:id/departures

Live-Ankünfte

/stops/:id/arrivals

Reiseplanung

/journeys

Bahnhöfe in der Nähe

/locations/nearby

Einrichtung

Umgebungsvariablen

Setzen Sie die folgenden Umgebungsvariablen:

UK_TRANSPORT_APP_ID=your_uk_app_id
UK_TRANSPORT_API_KEY=your_uk_api_key

Verwendung mit Claude Desktop

Fügen Sie dies zu Ihrer claude_desktop_config.json hinzu:

{
  "mcpServers": {
    "mcp-server-public-transport": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/mcp-server-public-transport",
        "run",
        "server.py"
      ],
      "env": {
        "UK_TRANSPORT_APP_ID": "your-uk-app-id",
        "UK_TRANSPORT_API_KEY": "your-uk-api-key"
      }
    }
  }
}

Ersetzen Sie /ABSOLUTE/PATH/TO/PARENT/FOLDER/mcp-server-public-transport durch den tatsächlichen Pfad, unter dem Sie das Repository geklont haben.

Hinweis: Möglicherweise müssen Sie den vollständigen Pfad zur uv-Executable im Befehlsfeld angeben. Diesen erhalten Sie unter MacOS/Linux mit which uv oder unter Windows mit where uv.

Entwicklung

Entwicklungsumgebung einrichten

  1. Repository klonen

git clone https://github.com/mirodn/mcp-server-public-transport.git
cd mcp-server-public-transport
  1. Abhängigkeiten installieren

uv sync
  1. Umgebungsvariablen setzen

cp .env.example .env
  1. Server ausführen

uv run server.py

Tests ausführen

Das Projekt verwendet pytest für Tests, wobei die folgenden Befehle verfügbar sind:

# Run all tests
make test

Code-Qualität

# Run linting
make lint

# Run code formatting
make format

Kontinuierliche Integration

Das Projekt enthält einen GitHub Actions-Workflow (.github/workflows/test.yml), der automatisch:

  • Tests auf Python 3.10, 3.11 und 3.12 ausführt

  • Linting-Prüfungen mit ruff durchführt

  • Bei jedem Push und Pull Request auf den main-Branch ausgeführt wird

Die CI-Pipeline stellt die Code-Qualität und Kompatibilität über die unterstützten Python-Versionen sicher, bevor Änderungen zusammengeführt werden.

Mitwirken

Beiträge sind willkommen! Bitte zögern Sie nicht, einen Pull Request einzureichen.

Das Paket wird automatisch auf PyPI bereitgestellt, wenn project.version in pyproject.toml aktualisiert wird. Folgen Sie für die Versionierung semver.

Lizenz

MIT-Lizenz

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mirodn/mcp-server-public-transport'

If you have feedback or need assistance with the MCP directory API, please join our Discord server