npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

mcp-tfl-journey

v1.0.0

Published

MCP server for TfL Journey API

Readme

TfL Journey MCP Server

A Model Context Protocol (MCP) server that provides journey information from Transport for London (TfL) API.

Project Structure

The project is organized into modular files following clean code principles:

mcp-tfl-journey/
├── index.js          # Main MCP server configuration and entry point
├── tfl-api.js        # TfL API communication and data fetching
├── helpers.js        # Utility functions for data extraction and processing
├── package.json      # Dependencies and project configuration
└── README.md         # This file

File Responsibilities

  • index.js: MCP server setup, tool definitions, and request handlers
  • tfl-api.js: API communication with TfL, data fetching, and response formatting
  • helpers.js: Pure utility functions for extracting and processing journey data

Features

  • Search for journey information between TfL stations
  • Extract alerts, disruptions, and stop points from journey data
  • Provide comprehensive journey summaries
  • Clean, modular, and maintainable code structure

Installation & Usage

Option 1: Using npx (Recommended)

Run directly without installation:

npx mcp-tfl-journey

Option 2: Local Installation

  1. Install dependencies:

    npm install
  2. Set your TfL API key as an environment variable:

    export TFL_API_KEY="your-api-key-here"
  3. Run the server:

    npm start
    # or
    node index.js

Configuration

Set your TfL API key as an environment variable:

export TFL_API_KEY="your-api-key-here"

You can get a free API key from TfL Developer Portal.

Usage

The server provides a search_journey tool that accepts:

  • from: Source station code (e.g., "9400ZZLUKSX")
  • to: Destination station code (e.g., "9400ZZLULVT")

Publishing to npm

To publish this package to npm:

  1. Update the repository URL in package.json with your actual GitHub repository

  2. Login to npm:

    npm login
  3. Publish the package:

    npm publish
  4. After publishing, users can run:

    npx mcp-tfl-journey

Code Quality

This project follows clean code principles:

  • Single Responsibility: Each file has a clear, focused purpose
  • Modularity: Functions are organized by their domain and responsibility
  • Readability: Clear naming and documentation
  • Maintainability: Easy to test, modify, and extend individual components

API Endpoint

The server uses the official TfL endpoint:

https://api.tfl.gov.uk/Journey/JourneyResults/{from}/to/{to}

Station Codes

Some examples of station codes:

  • 9400ZZLUKSX: Kings Cross
  • 9400ZZLULVT: Liverpool Street
  • 9400ZZLUPAD: Paddington
  • 9400ZZLUVIC: Victoria

For more station codes, please refer to the official TfL API documentation.