KMB Bus MCP Server

by kennyckk
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Servidor MCP de bus KMB

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso en tiempo real a la información de rutas y horarios de llegada de los autobuses KMB (九龍巴士) y Long Win (龍運巴士) de Hong Kong. Este servidor permite a los Modelos de Lenguaje consultar la información del servicio de autobuses de Hong Kong para responder a las preguntas de los usuarios sobre rutas, paradas y horarios de llegada estimados.

Características

  • Información de llegada de autobuses en tiempo real (ETA)
  • Consultas completas de rutas de autobús
  • Información y búsquedas de paradas de autobús
  • Mapeo de rutas y paradas
  • Sistema de almacenamiento en caché para optimizar las llamadas API
  • Soporte bilingüe (inglés y chino tradicional)

Fuente de datos

Este proyecto utiliza la API oficial de datos abiertos KMB/LWB:

Prerrequisitos

  • Python 3.10 o superior
  • administrador de paquetes uv

Instalación

  1. Primero, instala uv si aún no lo has hecho:
curl -LsSf https://astral.sh/uv/install.sh | sh
  1. Clonar el repositorio:
git clone git@github.com:kennyckk/mcp_hkbus.git cd mcp_hkbus
  1. Utilice uv para manejar el paquete de Python:
uv sync #using uv.lock

Uso

  1. Edite la configuración en su cliente MCP (por ejemplo, Claude Desktop):
{ "mcpServers": { "bus_service": { "command": "path/to/uv.exe", "args": ["--directory", "path/to/kmb_bus", "run", "kmb_mcp.py"], "background": true } } }
  1. El servidor proporciona varias herramientas que los modelos de lenguaje pueden utilizar para consultar información del bus:
  • get_route_list() : obtiene una lista de todas las rutas de autobús
  • get_stop_list() : Obtener una lista de todas las paradas de autobús
  • get_route_stops() : Obtener paradas para una ruta específica
  • find_stops_by_name() : busca paradas de autobús por nombre
  • get_all_routes_at_stop() : Obtener todas las rutas que sirven a una parada específica
  • get_eta() : Obtener los tiempos de llegada estimados

Pruebas

Ejecute el conjunto de pruebas usando pytest:

pytest test/kmb-mcp-tests.py

Dependencias

  • httpx : para solicitudes HTTP asíncronas
  • fastmcp : Para la implementación del servidor MCP
  • pytest : para pruebas (solo desarrollo)

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Expresiones de gratitud

  • KMB/LWB por proporcionar la API de datos abiertos
  • Los desarrolladores del protocolo MCP

Nota

Este servicio se basa en la API de datos abiertos KMB/LWB. Tenga en cuenta los límites de velocidad de la API e implemente un manejo de errores adecuado en entornos de producción.

-
security - not tested
F
license - not found
-
quality - not tested

Un servidor de protocolo de contexto de modelo que brinda acceso en tiempo real a la información de las rutas de autobuses KMB y Long Win de Hong Kong y a los tiempos de llegada, lo que permite que los modelos de lenguaje respondan preguntas de los usuarios sobre rutas de autobuses, paradas y tiempos de llegada estimados.

  1. Features
    1. Data Source
      1. Prerequisites
        1. Installation
          1. Usage
            1. Testing
              1. Dependencies
                1. Contributing
                  1. Acknowledgments
                    1. Note

                      Appeared in Searches

                      ID: 4llkf7k8b4