Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TRANSMI_CACHENoOptional: folder for the index cache.
TRANSMI_RT_BASENoOptional: alternative base URL for the realtime feeds.
TRANSMI_HISTORIALNoOptional: SQLite file used by the veedor for history.
TRANSMI_INDICE_URLNoOptional: URL of a prebuilt index, so the GTFS does not need to be downloaded.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

Datos en vivo del transporte público de Bogotá (TransMilenio troncal, duales, alimentadores, SITP zonal y TransMiCable), leídos de los feeds GTFS Realtime públicos de TransMilenio S.A.

  • "¿Cuándo llega mi bus a X?": llegadas (acepta el nombre de la estación).

  • Una ruta (B10, C25, H710, 16-8): buses_ruta. Con lat/lon del usuario dice cuándo pasa por su paradero.

  • Un bus concreto y sus próximas paradas: proximas_paradas con el número del bus.

  • Cerca del usuario: paraderos_cerca o buses_cerca.

  • Desvíos y cierres: alertas.

  • Veedor (lo programado contra lo real): programacion_ruta, ranking_rutas, historial_ruta, viajes_cancelados, salud_feed. Lo observado sale del historial que guarda transmilenio-veedor; si viene sin_historial, dilo y explica que hay que dejar ese comando corriendo.

  • ultima_parada es la última a la que el bus YA llegó, no la siguiente.

  • Los tiempos de llegada son estimados; dilo así.

  • Si la respuesta trae aviso, el feed oficial está detenido o falló: dilo antes de dar datos.

  • ritmo en una variante de buses_ruta: cómo va frente al horario según lo que tardaron sus buses en los últimos 20 minutos ("15 % más lento que el horario").

  • Si trae nota_sentido o aviso_sentido, faltan buses cuyo sentido aún no se conoce: dilo y sugiere volver a preguntar en uno o dos minutos.

  • Responde en español y menciona que los datos son de TransMilenio S.A.

Datos: TransMilenio S.A., datos abiertos (GTFS y GTFS Realtime), licencia CC BY-SA 4.0. Proyecto independiente, no afiliado a TransMilenio S.A.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
buscar_paradaA

Estaciones de TransMilenio y paraderos del SITP por nombre, sin importar tildes.

Devuelve id, nombre, tipo (estación, vagón o paradero), coordenadas y rutas que paran ahí. Ejemplos: "Calle 72", "Portal Norte", "Ricaurte", "cl 80 kr 30".

llegadasA

Próximos buses que llegan a una estación o paradero, del más cercano al más lejano.

parada: nombre ("Calle 72") o id de buscar_parada. En una estación incluye sus vagones. minutos: ventana de búsqueda, máximo 90. ruta: deja solo esa ruta ("¿cuándo pasa el B10 por Calle 72?"). Cada llegada trae ruta, destino, sentido, minutos y hora estimados, paradas que le faltan, vagón, número del bus, placa y retraso en segundos (positivo = tarde).

buses_rutaA

Variantes de una ruta y dónde van ahora sus buses.

ruta: el código del bus o la estación ("B10", "C25", "H710", "16-8"). Un código puede tener varias variantes (C25 troncal y C25 zonal, ida y regreso): cada una trae origen, destino, sentido ("Sur-Norte", "Circular"), número de paradas, duración típica y sus buses. Con lat/lon del usuario, cada variante trae tu_parada: su paradero más cercano y en cuántos minutos pasan los próximos buses por ahí.

proximas_paradasA

Por dónde va un bus y sus próximas paradas con hora estimada.

bus: el número pintado en el bus ("E0001", "Z70-4428") o la placa. llegadas y buses_ruta devuelven ese número.

paraderos_cercaB

Estaciones y paraderos con servicio más cercanos a un punto, con distancia y rutas.

buses_cercaB

Buses en vía alrededor de un punto (radio de 50 a 5000 m), del más cercano al más lejano.

alertasA

Alertas vigentes: desvíos, cierres, planes de manejo de tránsito.

Filtra por texto (buscar: "Caracas", "calle 26") o por código de ruta.

programacion_rutaA

Lo que el horario oficial programa para una ruta un día: viajes por hora y buses en vía.

fecha: "hoy" (por defecto), "ayer" o "2026-11-06". Distingue hábil, sábado y festivo. No necesita historial. Sirve para "¿cuántos viajes tiene el C25 hoy?" o "¿a qué hora hay más buses del B10?".

ranking_rutasA

Rutas ordenadas para comparar: cuál tiene más o menos buses, cuál cumple menos su horario.

criterio: "buses" (promedio en vía frente a lo programado), "cumplimiento" (viajes vistos sobre programados), "retraso" (minutos promedio frente al horario) o "programados" (viajes del horario, sin historial). orden: "mas" o "menos". desde_hora/hasta_hora: franja, p. ej. 6 y 9 para la hora pico de la mañana. sistema: "troncal", "zonal", "alimentador", "dual" o "transmicable".

historial_rutaA

Cómo le ha ido a una ruta en los últimos días: buses promedio y máximo, viajes vistos contra programados, retraso promedio y el perfil por hora. fecha es el último día.

viajes_canceladosA

Viajes que TransMilenio marca como cancelados o añadidos frente a su horario.

Sin ruta: total del día, por sistema y las rutas con más (o menos, orden="menos") porcentaje de viajes cancelados. Con ruta: detalle por hora y, si es hoy, las horas de salida canceladas. fecha: "hoy" (sale del feed en vivo, sin historial), "ayer" o "2026-11-10" (de lo guardado). desde_hora/hasta_hora: franja por hora de salida. Sirve para "¿qué rutas cancelaron más viajes hoy?" o "¿cuántos viajes del C25 se cayeron?".

salud_feedB

Si el feed de TransMilenio está al día y cuándo ha estado caído (disponibilidad y caídas).

estado_sistemaA

Cuántos buses hay en vía, por sistema, y qué tan fresco está el feed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 13 tools

Disambiguation4/5

Most tools target a clearly distinct input: a point (buses_cerca vs paraderos_cerca), a stop (llegadas), a route (buses_ruta, programacion_ruta, historial_ruta), or a bus (proximas_paradas). The two soft spots are salud_feed vs estado_sistema, which both expose feed freshness, and the four route-analytics tools (programacion, historial, ranking, cancelados), though the latter are differentiated by time window and aggregation.

Naming Consistency4/5

All names are snake_case Spanish and mostly follow a noun+qualifier pattern (buses_cerca, paraderos_cerca, proximas_paradas, programacion_ruta, ranking_rutas, historial_ruta). Minor deviations: the verb-first buscar_parada and the bare plural nouns alertas and llegadas break the pattern slightly.

Tool Count5/5

13 tools sit in the sweet spot for a rich real-time transit domain, and each covers a distinct query shape (feed health, live positions, arrivals, schedules, history, rankings, cancellations, stop lookup). Nothing looks padded or redundant.

Completeness4/5

Coverage is broad: feed status, live fleet, per-bus and per-route positions, arrivals, stop search and proximity, alerts, schedule, history, ranking and cancellations. Gaps are minor — there is no way to search for a route by name/description (you must already know the code) and no origin-to-destination trip planner.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues