cats-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CATS_ALERTS_URL | No | URL of the CATS alerts GTFS-Realtime feed. | https://gtfsrealtime.ridetransit.org/GTFSRealTime/Alert/Alerts.pb |
| CATS_STATIC_TTL_MS | No | Cache TTL in milliseconds for the static GTFS data. | 21600000 |
| CATS_MAX_FEED_BYTES | No | Maximum number of bytes accepted from a realtime feed response. | 33554432 |
| CATS_REALTIME_TTL_MS | No | Cache TTL in milliseconds for realtime feeds. | 20000 |
| CATS_STATIC_GTFS_URL | No | URL of the CATS static GTFS schedule archive (zip). | https://gtfsrealtime.ridetransit.org/GTFSStatic/api/GTFSDownload/GTFS.zip |
| CATS_MAX_STATIC_BYTES | No | Maximum number of bytes accepted from the static GTFS archive. | 268435456 |
| CATS_TRIP_UPDATES_URL | No | URL of the CATS trip updates GTFS-Realtime feed. | https://gtfsrealtime.ridetransit.org/GTFSRealTime/TripUpdate/TripUpdates.pb |
| CATS_REQUEST_TIMEOUT_MS | No | HTTP request timeout in milliseconds for feed fetches. | 30000 |
| CATS_VEHICLE_POSITIONS_URL | No | URL of the CATS vehicle positions GTFS-Realtime feed. | https://gtfsrealtime.ridetransit.org/GTFSRealTime/Vehicle/VehiclePositions.pb |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| find_vehicleA | Locate a specific CATS bus or train and return its current GPS coordinates. Give "vehicle" for a vehicle number (e.g. "2301"), or "route" to get every vehicle currently running a route (e.g. "9", "501", "Blue Line"). Includes heading, speed, occupancy, and next scheduled stop when available. |
| list_vehiclesA | Return the current GPS coordinates of every CATS bus and train in service. Optionally filter to buses or trains, or to a single route. |
| get_arrivalsA | Estimated arrival times of buses or trains at a specific stop or station. Accepts a stop id, stop code, or part of a stop name. Reports minutes away, schedule deviation, the vehicle number, and any service alerts for that stop. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
find_vehicle and list_vehicles overlap significantly: both can return every vehicle on a route, making the boundary between them unclear. get_arrivals is distinct, but the route-listing capability in find_vehicle duplicates list_vehicles with a route filter.
All tools use a consistent verb_noun snake_case pattern: find_vehicle, list_vehicles, get_arrivals. The verbs are distinct and clearly indicate the action, with no mixed conventions.
Three tools is a reasonable, focused set for a real-time transit information server. Each tool covers a distinct core need—vehicle location, fleet listing, and arrivals—without unnecessary bloat.
The tools cover the essential real-time transit operations: locating vehicles, listing vehicles, and fetching arrivals. Minor gaps exist, such as no dedicated route or stop directory tool, but the provided inputs (route numbers, stop ids/names) make the surface practical for common queries.