Skip to content

Integration · Company data

Connect Claude & ChatGPT to Transport for London

Ask your AI how London's transport is running right now. It reads line status and disruptions for the tube, buses, DLR, Overground and Elizabeth line, gets live arrival predictions at a stop and plans journeys between postcodes, stops or coordinates. It can also check road status and roadworks, and how many bikes are free at a docking station.

Connect Transport for London free

Free plan, no credit card. Takes about a minute.

Try asking

  • “Is the Victoria line running normally?”

    The AI gets the current service status of the line: good service, delays or closures.

  • “Are there any disruptions on the tube right now?”

    It gets the status of all tube lines and lists current disruptions.

  • “When is the next 73 bus at this stop?”

    It searches for the stop, then gets live arrival predictions for the route there.

What your AI can do

Lines and status

Line status and disruptions by line or mode, timetables, routes and the stops on each line.

Stops and arrivals

Search stops or find them near a location, and get live arrival predictions and stop disruptions.

Journeys, roads and bikes

Plan journeys, check road status and roadworks, and find Santander Cycles docking stations.

  • “Plan a trip from King's Cross to SE1 9SG, arriving by 9:00 tomorrow.”

    It plans the journey with an arrival time and returns the route options.

  • “Are there free bikes at the docking station by Waterloo?”

    It searches Santander Cycles docking stations by name and returns available bikes and empty docks.

  • “Are there roadworks or closures on the A406 today?”

    It gets the road's current traffic status and lists disruptions such as roadworks and closures.

59 tools for Transport for London

These tools are switched on when you connect. You can switch any of them off, or require your approval before it runs.

  • get_bike_pointGet one cycle docking station by `bike_point_id`, including available bikes and empty docks.
  • get_disruptionGet one disruption by disruption ids. API summary: Gets a list of active disruptions filtered by disruption Ids.
  • get_lineGet details of one or more lines by `ids`.
  • get_line_arrivals_at_stopGet live arrival predictions for one or more lines (`ids`) at a stop (`stop_point_id`), optionally by `direction`.
  • get_line_route_sequenceGet the ordered sequence of stops on a line by `line_id` and `direction` (inbound, outbound or all).
  • get_line_statusGet the current service status (good service, delays, closures) of one or more lines by `ids`, e.g. victoria, central.
  • get_line_timetableGet the timetable of a line (`line_id`) from a stop (`from_stop_point_id`).
  • get_mode_stop_point_get_by_modeGet one mode by modes. Results are paginated. API summary: Gets a list of StopPoints filtered by the modes available at that StopPoint.
  • get_roadGet one road by ids. API summary: Gets the road with the specified id (e.g. A1).
  • get_road_statusGet the current traffic status of one or more roads by `ids`, e.g. a2, a406.
  • get_search_stop_point_searchGet one search by query. Results are paginated. API summary: Search StopPoints by their common name, or their 5-digit Countdown Bus Stop Code.
  • get_smsGet one sms by sms id. API summary: Gets a StopPoint for a given sms code.
  • get_statusGet one status by severity. API summary: Gets the line status for all lines with a given severity A list of valid severity codes can be obtained from a call to Line/Meta/Severity.
  • get_status_by_modeGet the current service status of all lines for one or more `modes`, e.g. tube, overground, elizabeth-line, dlr, bus.
  • get_status_toGet one to for a status by end date. API summary: Gets the line status for given line ids during the provided dates e.g Minor Delays.
  • get_stopGet details of one or more stops by `ids`: name, location, lines served and facilities.
  • get_stop_arrivalsGet live arrival predictions for all lines at a stop by `stop_point_id`.
  • get_stop_point_can_reach_on_lineGet one can reach on line for a stop point by line id. API summary: Gets Stopoints that are reachable from a station/line combination.
  • get_stop_point_crowdingGet one crowding for a stop point by line. API summary: Gets all the Crowding data (static) for the StopPointId, plus crowding data for a given line and optionally a particular direction.
  • get_stop_point_direction_toGet one direction to for a stop point by to stop point id. API summary: Returns the canonical direction, "inbound" or "outbound", for a given pair of stop point Ids in the direction from -> to.
  • get_timetable_toGet one to for a timetable by to stop point id. API summary: Gets the timetable for a specified station on the give line with specified destination.
  • get_typeGet one type by types. API summary: Gets all stop points of a given type.
  • get_type_pageGet one page for a type by page. API summary: Gets all the stop points of given type(s) with a page number.
  • list_active_service_typesList active service types. API summary: Returns the service type active for a mode. Currently only supports tube.
  • list_bike_pointsList bike points. API summary: Gets all bike point locations. The Place object has an addtionalProperties array which contains the nbBikes, nbDocks and nbSpaces numbers wh….
  • list_categoriesList categories. API summary: Gets a list of valid disruption categories.
  • list_categories_road_meta_categoriesList categories. API summary: Gets a list of valid RoadDisruption categories.
  • list_categories_stop_point_meta_categoriesList categories. API summary: Gets the list of available StopPoint additional information categories.
  • list_disruptionsList disruptions. Optional filters: start date or end date. API summary: Gets a list of disrupted streets. If no date filters are provided, current disruptions are returned.
  • list_disruptions_by_modeList current disruptions for one or more transport `modes`.
  • list_line_disruptionsList current disruptions on one or more lines by `ids`.
  • list_line_routesList routes for a line. Optional filters: service types. API summary: Get all valid routes for given line ids, including the name and id of the originating and terminating stops for each route.
  • list_line_stopsList the stations and stops served by a line, by `line_id`.
  • list_lines_by_modeList all lines for one or more `modes`, e.g. tube, bus, dlr.
  • list_mode_arrivalsList arrivals for a mode. Results are paginated. API summary: Gets the next arrival predictions for all stops of a given mode.
  • list_mode_disruptions_stop_point_disruption_by_modeList disruptions for a mode. Optional filters: include route blocked stops. API summary: Gets a distinct list of disrupted stop points for the given modes.
  • list_mode_routesList routes for a mode. Optional filters: service types. API summary: Gets all lines and their valid routes for given modes, including the name and id of the originating and terminating stops for each route.
  • list_modesList modes. API summary: Gets a list of all of the available journey planner modes.
  • list_modes_line_meta_modesList modes. API summary: Gets a list of valid modes.
  • list_modes_stop_point_meta_modesList modes. API summary: Gets the list of available StopPoint modes.
  • list_road_disruptionsList current disruptions such as roadworks and closures on one or more roads by `ids`.
  • list_roadsList the major roads TfL reports status for, with their IDs.
  • list_routesList routes. Optional filters: service types. API summary: Get all valid routes for all lines, including the name and id of the originating and terminating stops for each route.
  • list_service_typesList service types. API summary: Gets a list of valid ServiceTypes to filter on.
  • list_service_types_stop_point_get_service_typesList service types. Optional filters: id, line ids or modes. API summary: Gets the service types for a given stoppoint.
  • list_severitiesList severities. API summary: Gets a list of valid severity codes.
  • list_severities_road_meta_severitiesList severities. API summary: Gets a list of valid RoadDisruption severity codes.
  • list_stop_disruptionsList current disruptions at one or more stops by `ids`, such as lift or entrance closures.
  • list_stop_point_arrival_departuresList arrival departures for a stop point. Optional filters: line ids. API summary: Gets the list of arrival and departure predictions for the given stop point id (overground, Elizabeth line and thameslink only).
  • list_stop_point_car_parksList car parks for a stop point. API summary: Get car parks corresponding to the given stop point id.
  • list_stop_point_place_typesList place types for a stop point. Optional filters: place types. API summary: Get a list of places corresponding to a given id and place types.
  • list_stop_point_routesList routes for a stop point. Optional filters: service types. API summary: Returns the route sections for all the lines that service the given stop point ids.
  • list_stop_point_taxi_ranksList taxi ranks for a stop point. API summary: Gets a list of taxi ranks corresponding to the given stop point id.
  • list_stop_typesList stop types. API summary: Gets the list of available StopPoint types.
  • list_stops_near_locationList stops near a location (`location_lat`, `location_lon`, `radius` in metres), filtered by `stop_types`, e.g. NaptanMetroStation or NaptanPublicBusCoachTram.
  • plan_journeyPlan a journey across London transport from `from` to `to` (postcode, stop ID or "lat,lon"). Optional `date` (yyyyMMdd), `time` (HHmm), `time_is` Arriving or Departing, `mode` and `journey_preference`.
  • search_bike_pointsSearch Santander Cycles docking stations by name in `query`.
  • search_linesSearch lines and routes by name or number in `query`, e.g. a bus route number.
  • search_stopsSearch stations and stops by name in `query`, optionally filtered by `modes` or `lines`. Returns stop IDs for arrivals and journeys.

Set up in three steps

  1. 1

    Pick the app

    Create a free PipMCP account and choose Transport for London from the app list.

  2. 2

    Paste your key

    Paste your TfL primary key (app_key). Register on the TfL API portal and activate your account from the email. Sign in, open Products and subscribe to the 500 requests data plan, then copy your key from the Profile page. You do not need an app_id.

  3. 3

    Add the link to your AI

    You get a personal MCP link. Add it to Claude, ChatGPT or Cursor:

    1. Click your name, then Settings › Connectors › Add custom connector.
    2. Paste your link as the Remote MCP server URL.
    3. Switch it on from the + menu in a chat.

Questions

What can the AI do in TfL?

It can read line details, status, disruptions, timetables and stop sequences, list lines by mode, search and read stops, get live arrivals, plan journeys, check road status and road disruptions, and find Santander Cycles docking stations with available bikes and docks.

Does the AI see my TfL credentials?

No. Your TfL credentials are encrypted at rest and never shown to the AI. After you save them, they are not shown again, not even to you. The AI only sees the results of the tools it calls.

Can I control what the AI is allowed to do?

Yes. You choose which tools are switched on. All tools here only read TfL data, so nothing is booked or changed. Every tool call is logged.

Does it work with ChatGPT?

Yes. In ChatGPT, open Settings › Apps & Connectors › Advanced, turn on Developer mode and add your PipMCP link. Developer mode needs a paid ChatGPT plan: Plus, Pro, Business or Enterprise. The same link also works in Claude (Settings › Connectors › Add custom connector), Cursor and other MCP clients.

What does it cost?

PipMCP has a free plan with no credit card required. Paid plans bill per completed task. You also need a key from the TfL API portal.

Does it show live arrivals?

Yes. It gets live arrival predictions for all lines at a stop, or for chosen lines at a stop in one direction. Ask for the stop by name and the AI finds its stop ID first.

Let your AI work in Transport for London today.

Start free. Your key stays encrypted, and you decide what the AI may do.

Connect Transport for London free

PipMCP is not affiliated with Transport for London. Product names are trademarks of their owners.