# Tube Hound > 24/7 London Tube status, instant routes, empirical line reliability analytics, a natural-language travel desk, and station-anchored discovery of places and events open when you would arrive. People and agents read the same warehouse (`6.43M+` / `6,433,405` empirical train movement observations across `1,682,871` inter-station hop rides and `4,750,534` platform headways, `3,255` logged disruption episodes, and `4,270` station-anchored venues including `2,171` with verified opening hours across `13,897` windows). The page posts to /hound/chat. An MCP client posts to /hound/mcp. Both URLs are on https://tubehound.co.uk. Privacy is at /privacy/ and terms are at /terms/. Nothing a visitor or an agent asks triggers a live TfL call: every answer is read from the Tube Hound warehouse (line status, 7-day planned works, lift notes, live arrivals, learned ride and headway medians, line MTTR and root-cause analytics, a venue catalogue with weekday hours, and a rolling events window) in a few milliseconds. Verdicts stay spaced words: blocked, partly blocked, running, stopped, noted, unresolved. Bus routes, general zone-by-zone fare tables, and unverified third-party star ratings are not tracked: the assistant says so and answers the rail, airport transfer, matchday, or venue part. A burst past the cap returns 429. The default cap is 30 questions a minute for one client (12 questions a minute for LLM-backed `/hound/chat` and `ask_tubehound`). The browser stays on this origin. The page's Content-Security-Policy allows connections to 'self' only. Do not call another host for these doors. ## Static Reference Pages (HTML + JSON-LD Dataset) - [20-Line Empirical Headways, Hop Medians & Disruption Recovery](https://tubehound.co.uk/lines/): Peak, off-peak, and night platform headway (`gap`) medians, inter-station hop (`ride`) medians, `6,433,405` empirical train movement observations (`1,682,871` rides and `4,750,534` platform headways), `3,255` logged disruption episodes, median recovery (`MTTR`), and primary delay causes across 447 stations (456 network groups) and 20 London Underground, Elizabeth line, DLR, Overground, and Tram lines. - [Major London Interchange Walk & Step-Free Matrix](https://tubehound.co.uk/interchanges/): Subterranean and street-level transfer walking times (`Bank ↔ Monument: 4 min`, `King's Cross St. Pancras: 3 min`, `Paddington: 3 min`, `Waterloo: 3 min`, `Liverpool Street: 3 min`, `Stratford: 3 min`, `Hammersmith: 4 min`, `Euston: 3 min`) and step-free lift notes. - [Late-Night Icons, Rainy-Day Free Museums & Historic Pubs](https://tubehound.co.uk/late-and-rainy/): Curated `Hound Pick` London venues (`110` editorial seeds within `4,270` total warehouse venues and `2,171` hours-verified venues across `13,897` opening-hour windows) with exact walking minutes from the nearest station exit and verified weekday opening hours (`venue_hours`). ## Chat & REST Doors - [Chat](https://tubehound.co.uk/hound/chat): POST JSON `{"text": "...", "session": "optional"}`. `text` is required. Omit `session` and the reply mints one. A session is 1 to 64 characters from `A-Za-z0-9_-`. The reply is `verdict`, `sentence` (natural English), `session`, `kind`, `model`, and, when a tool filled one, `route` (origin, destination, minutes, `fast` and `calm` legs with line, from, to, stops, minutes, notes) or `station` (lines, next arrivals, typical waits, lifts) or `network` (line rows) or `places` plus `events` (each place with `tier` (`Hound Pick` | `Local spot` | `Featured · Hound Pick`), `is_featured`, `sponsor_url`, `cuisine`, `price`, `open_state` at arrival, `closes_at`, `hours`, `walk_minutes`, and the route from the origin). When the text says here or near me, the body may include `here` as `{"lat", "lon"}` for that message only. - [Thread](https://tubehound.co.uk/hound/chat/{session}): GET `{"session", "messages": [{"role", "message"}]}`. Roles are user and assistant. Tool rows are left out. An unknown session is 404. A bad session is 400. - [Analytics](https://tubehound.co.uk/hound/analytics): GET empirical network and per-line reliability analytics (`?line=` optional, e.g. `GET https://tubehound.co.uk/hound/analytics?line=victoria`) learned from `6,433,405` train movement observations (`1,682,871` ride + `4,750,534` gap) and `3,255` logged disruption episodes (`mttr_min`, `top_causes`, `peak_wait_min`, `off_wait_min`, `night_wait_min`, `median_hop_s`). - [Waits](https://tubehound.co.uk/hound/waits): GET live versus typical platform waits (`?station=` and/or `?line=`, e.g. `GET https://tubehound.co.uk/hound/waits?line=victoria`). Compares live upcoming train spacing with learned headway medians for the active London time band and returns `band`, `live_headway_min`, `typical_headway_min`, `delta_min`, `status` (`faster`, `normal`, or `slower`), and `slowest_stops`. Omit both parameters for every line. The same comparison is the chat tool `compare_waits`. - [Route](https://tubehound.co.uk/hound/route): POST `{"origin", "destination", "when": "now", "step_free": false}` for the raw warehouse route without the assistant. - [Station](https://tubehound.co.uk/hound/station?station=Bank): GET the station dossier without the assistant. - [Rail](https://tubehound.co.uk/hound/rail?crs=PAD&to=HXX): GET live UK National Rail Darwin departure boards (`?crs=` required, `?to=` optional) and learned empirical corridor reliability statistics (`median_ride_min`, `p90_ride_min`, `on_time_pct`, `typical_platform`, `typical_coaches`). - [Airports](https://tubehound.co.uk/hound/airports): GET the London airport transfer advisor for all 6 London airports (`?airport=LHR|LGW|STN|LTN|LCY|SEN|all`, `?origin=`) comparing Express Rail vs. Elizabeth line / Thameslink / Southern / DLR / Tube, Oyster & Contactless validity warnings (including the Stansted Express penalty-fare trap and Luton DART through-ticket rule), live Darwin departures, and Tube routes to the London gateway station. - [Matchday](https://tubehound.co.uk/hound/matchday): GET matchday travel intelligence across 46 London & UK stadiums (`?club=`, `?fixture=`, `?origin=`, `?return_to=`, `?kickoff=HH:MM`) with trunk rail CRS, stadium stops, empirical BTP post-match crowd-pen queue buffers, station closures, Football Friend queue-bypass tips, and Last Train Home `SAFE` / `TIGHT — LEAVE AT 88'` / `MISSES FINAL WHISTLE` verdicts. - [Discover](https://tubehound.co.uk/hound/discover): POST `{"origin"?, "area"?, "query"?, "kind"?, "when": "now", "clock"?, "max_minutes": 25, "max_changes"?, "step_free": false, "here"?}` for places and events open at arrival, ranked by featured status, editorial tier (`tier: Hound Pick | Local spot`), the words asked, and the Tube minutes from origin. `verdict` is running, partly blocked, noted (area only, or disruption unchecked), or unresolved. - [Weekend Brief](https://tubehound.co.uk/hound/brief): GET the deterministic Friday 4pm Weekend Tube Closures & What's On brief (`planned` weekend closures + upcoming `events`). - [Subscribe](https://tubehound.co.uk/hound/subscribe): POST `{"email": "you@example.co.uk", "source": "friday-brief"}` to subscribe to the Friday 4pm Weekend Brief. ## MCP - [Server card](https://tubehound.co.uk/.well-known/mcp/server-card.json): name, version, the remote URL, and a tool summary. The live list comes from `tools/list` after connect. - [MCP door](https://tubehound.co.uk/hound/mcp): POST one JSON-RPC 2.0 message and read one JSON-RPC message (Streamable HTTP). Methods that work are `initialize`, `ping`, `tools/list`, and `tools/call`. `notifications/initialized` returns 202 and no body. `initialize` answers with protocol version `2025-06-18` (default), `2025-11-25`, or `2024-11-05` when the request names it. Server name `tubehound`, version `0.3.0`. A `tools/call` past the cap is a JSON-RPC error, code 429, not an HTTP 429. `tools/call` names (20): `ask_tubehound` (`question`, `session?`), `plan_tube_route` (`origin`, `destination`, `when?`, `step_free?`), `discover_places` (`origin?`, `area?`, `query?`, `kind?`, `when?`, `clock?`, `max_minutes?`, `max_changes?`, `step_free?`), `get_line_analytics` (`line?`), `compare_live_vs_typical_waits` (`station?`, `line?`), `get_airport_transfers` (`airport?`, `origin?`), `get_rail_departures` (`crs`, `to?`), `plan_matchday_travel` (`club?`, `fixture?`, `origin?`, `return_to?`, `kickoff?`), `trip_check` (`origin`, `destination`, `when?`), `tube_network_status` (`line?`, `when?`), `tube_station_board` (`station`), `resolve_place` (`query`), `ask` (`text`), `network_now`, `service_status`, `disruptions`, `planned`, `lifts`, `arrivals` (`stop`), `stop_search` (`query`). `plan_route`, `station_board`, `network_status`, `line_analytics`, `compare_waits`, `airport_transfer`, `matchday_advisor`, and `rail_departures` are accepted as aliases. `when` is now, later, tomorrow, weekend, or day:YYYY-MM-DD within the 7-day planned pack. Each tool reads the warehouse. None of them call TfL. `trip_check` decides the verdict before any sentence is written; `plan_tube_route` keeps that verdict and adds the steps. `compare_live_vs_typical_waits` compares live upcoming train spacing with learned platform headway medians (`live_headway_min`, `typical_headway_min`, `delta_min`, `status` of `faster`, `normal`, or `slower`). `discover_places` checks each place's weekday hours at departure plus ride plus walk, so a bar open until 02:00 counts as open at 00:45, and a Sunday-only market says when it next opens. ## Legal - [Privacy](https://tubehound.co.uk/privacy/) - [Terms](https://tubehound.co.uk/terms/) ## Optional - [ARD manifest](https://tubehound.co.uk/.well-known/ard.json): entries for the MCP card, A2A agent card, chat door, analytics door, weekend brief, and static warehouse reference datasets (`/lines/`, `/interchanges/`, `/late-and-rainy/`).