Transport NSW API Client MCP
Cliente API de Transport NSW (implementación de MCP)
Un MCP de Claude para interactuar con la API de Transport NSW mediante solicitudes HTTP directas.
Acerca de
Este proyecto implementa un servicio de Protocolo de Contexto de Modelo (MCP) para la API de Transport NSW.
Related MCP server: openbusdata
Configuración
Clonar este repositorio
Instalar dependencias usando uv (administrador rápido de paquetes de Python):
uv venv uv syncCrea un archivo
.envcon tu clave API:OPEN_TRANSPORT_API_KEY=your_api_key_here(Opcional) Ejecute el Inspector MCP:
uv run mcp dev api.pyY visite el servidor en http://localhost:5173 (el puerto puede ser diferente).
Características
API del buscador de paradas : busque paradas de transporte por nombre o coordenadas
API de alertas : obtenga información sobre alertas e interrupciones del transporte
API de monitorización de salidas : obtenga información de salidas en tiempo real para las paradas de transporte
Implementación de MCP : Estructurado como un servicio de protocolo de contexto modelo
Ejemplos de uso
Próximamente, ejemplos de MCP. Ejemplos estándar de Python a continuación:
Encontrar paradas de transporte
from api import find_transport_stops
# Search by name
stops = find_transport_stops(stop_name="Central Station")
# Search by coordinates (Central Station area)
central_station = '151.206290:-33.884080:EPSG:4326'
stops = find_transport_stops(coord=central_station, radius=500)Recibir alertas de transporte
from api import get_transport_alerts
# Get all current alerts
alerts = get_transport_alerts()
# Get alerts for a specific date
date_alerts = get_transport_alerts(date='22-03-2025')
# Get train alerts only (mot_type=1)
train_alerts = get_transport_alerts(mot_type=1)Monitorizar salidas en tiempo real
from api import get_departure_monitor
# Get departures from Central Station
departures = get_departure_monitor("200060") # Central Station ID
# Get departures for a specific time
from datetime import datetime
time_departures = get_departure_monitor("200060", time="15:30")
# Get only train departures
train_departures = get_departure_monitor("200060", mot_type=1) # 1 = TrainGuión de demostración
El proyecto incluye un script de demostración completo que muestra toda la funcionalidad de la API:
# Run the full demo
python demo.py
# Run specific sections
python demo.py --stops # Stop finder demo
python demo.py --alerts # Transport alerts demo
python demo.py --departures # Departure monitoring demoPruebas
Pruebas locales
Ejecute el conjunto de pruebas completo con pytest:
uv run pytestEjecutar con informes de cobertura:
uv run pytest --cov=apiIntegración continua
Las pruebas se ejecutan automáticamente en GitHub Actions para cada solicitud de inserción y extracción a la rama principal. El flujo de trabajo:
Configura Python 3.10
Instala uv y dependencias del proyecto
Ejecuta pruebas con informes de cobertura.
Para utilizar esta función:
Agregue su
OPEN_TRANSPORT_API_KEYcomo un secreto del repositorio de GitHubSube tu código a GitHub
Integración MCP
Este proyecto sigue la especificación del Protocolo de Contexto de Modelo, lo que permite que los modelos de IA accedan a los datos de Transport NSW a través de una interfaz estandarizada.
Gestión de paquetes
Este proyecto utiliza uv, un gestor de paquetes de Python moderno escrito en Rust. Las dependencias se gestionan mediante:
pyproject.toml: define las dependencias del proyectouv.lock: bloquea las versiones de dependencia para entornos reproducibles
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceAn MCP server for interacting with the Berlin Public Transport (BVG) API to search for locations and plan journeys. It provides real-time access to departures, arrivals, trip details, and vehicle tracking within Berlin's transit network.MIT
- AlicenseCqualityBmaintenanceMCP server for the UK Bus Open Data Service, enabling timetable queries, stop search, route discovery, journey planning, and real-time bus tracking.16MIT
- Flicense-qualityDmaintenanceMCP server for real-time German public transport data (HAFAS/VBN network). Enables querying departures, arrivals, journeys, and nearby stops using natural language.
- Alicense-qualityBmaintenanceMCP server that integrates with the transport12 API to provide tools for searching stops, routes, arrivals, and vehicle forecasts, enabling natural language interaction with public transport data.9MIT
Related MCP Connectors
Swiss Transport MCP — wraps Transport Open Data API (free, no auth)
TomTom MCP — wraps the TomTom Search & Routing APIs (api.tomtom.com)
Real-time transit stops, routes, arrivals, vehicle positions, and schedules via OneBusAway APIs.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/danhussey/transportnsw-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server