London Transport MCP Server について
London Transport MCP Serverは、3種類のツールを通じてAIアシスタントにTransport for Londonのリアルタイム運行状況と経路計画データを提供します。公開されているTfL Unified APIを利用する独立した非公式プロジェクトです。
主な機能
- 01TfL路線の運行状況を確認
- 02運行障害の詳細を表示
- 03地点間の経路を計画
- 04stdio、SSE、Streamable HTTPに対応
活用シーン
- 01通勤前に路線の運行状況を確認
- 02路線の運行障害について詳しく把握
- 03ロンドン市内の経路を計画
MCP 対応
TfLの路線状況、運行障害の詳細、経路計画をツールとしてMCPクライアントに提供します。stdio、SSE、Streamable HTTPのトランスポートに対応しています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| lineId | string | はい | 照会する路線の識別子(例:victoria、central)。 |
| app_key | string | いいえ | 任意の API アプリケーションキー。 |
詳細
TfL(Transport for London)運行状況・経路検索 MCP サーバー
この Model Context Protocol(MCP) サーバーは、一連の自動化されたツールを通じて、AI アシスタントが Transport for London のリアルタイムデータを利用できるようにします。
⚠️ 重要な免責事項: これはTransport for London(TfL)の公式 MCP サーバーではありません。公開されている TfL Unified API を使用して交通データを提供する独立したプロジェクトです。Transport for London との提携関係はなく、同組織の承認や公式サポートを受けていません。
デモ動画

🚇 この MCP サーバーでできること
このサーバーを使うと、AI アシスタント(Claude Desktop や VS Code GitHub Copilot など)が、次の 3 つの主な機能を通じて TfL の最新データを利用できます。
🔧 利用可能なツール
get_line_status- TfL の路線(Central、Victoria、Piccadilly など)の現在の運行状況を取得しますget_line_status_detail- TfL の路線の障害情報を含む、詳細な運行状況を取得しますplan_journey- TfL Journey Planner を使って、2 つの場所の間の経路を計画します
🎯 利用例
この MCP サーバーに接続すると、AI アシスタントは次のようなサポートを提供できます。
- 通勤前に、利用する地下鉄路線が通常どおり運行しているか確認する
- 運行障害について詳しい情報を取得する
- ロンドン市内の場所間の最適なルートを計画する
- ロンドンでの移動に関するリアルタイムのアドバイスを提供する
やり取りの例:
- 「Central 路線は通常どおり運行していますか?」
- 「King's Cross から Heathrow Airport までの経路を計画してください」
- 「今日、Northern 路線で遅延が発生している原因は何ですか?」
それでは、セットアップを始めましょう!
🚦 はじめに
お好みのインストール方法を選択してください。
📦 オプション 1:npm から簡単にインストール(推奨)
この MCP サーバーを使う最も簡単な方法は、npm を利用することです。
インストール
npm install -g london-transport-mcp
🔐 TfL API キーの設定
TfL API Portal から無料の API キーを取得できます。
方法 1:環境変数(推奨) システムに環境変数を設定します。
# Windows (PowerShell)
$env:TFL_API_KEY="your_actual_tfl_api_key_here"
# macOS/Linux
export TFL_API_KEY="your_actual_tfl_api_key_here"
方法 2:MCP 設定 API キーを MCP 設定に直接記述します(以下の例を参照)。
AI アシスタントの設定
Claude Desktop の場合(Settings → Developers → Edit Config):
{
"mcpServers": {
"london-transport": {
"command": "npx",
"args": ["london-transport-mcp"],
"env": {
"TFL_API_KEY": "your_actual_tfl_api_key_here"
}
}
}
}
VS Code GitHub Copilot の場合(Settings → GitHub Copilot › MCP: Servers):
{
"london-transport": {
"command": "npx",
"args": ["london-transport-mcp"],
"env": {
"TFL_API_KEY": "your_actual_tfl_api_key_here"
}
}
}
以上です!手動でのインストールやパスの設定は必要ありません。
🛠️ オプション 2:ローカル開発環境のセットアップ
コードを変更したり、プロジェクトに貢献したりしたい開発者向けです。
⚙️ 前提条件
始める前に、次のものが揃っていることを確認してください。
- Node.js(v18 以上が必要、v20 以上を推奨)
- npm(Node に含まれています)
警告:Node のバージョンがこれより古い場合、fetch が利用できません。ツールは HTTP リクエストに fetch を使用します。これを回避するには、ツールを変更して node-fetch を使用できます。その場合は、node-fetch が依存関係としてインストールされていることを確認し、各ツールのファイルで fetch としてインポートしてください。
📥 インストールとセットアップ
1. リポジトリをクローンする
git clone https://github.com/anoopt/london-tfl-journey-status-mcp-server.git
cd london-tfl-journey-status-mcp-server
2. 依存関係をインストールする
npm install
🔐 TfL API キーの設定
3. TfL API キーを設定する
プロジェクトのルートに .env ファイルを作成し、TfL API キーを記述します。
TFL_API_KEY=your_actual_tfl_api_key_here
TfL API Portal から無料の API キーを取得できます。
🧪 Postman で MCP サーバーをテストする
MCP サーバーを AI アシスタントに接続する前に、Postman でテストすることを強くおすすめします。 Postman Desktop Application を使うと、MCP サーバーを簡単に実行してテストできます。
ステップ 1:Postman Desktop をダウンロードする
postman.com/downloads から最新の Postman Desktop Application をダウンロードしてください。
ステップ 2:MCP リクエストを作成する
- Postman Desktop を開きます
- 新しい MCP Request を作成します(詳しい手順はドキュメントを参照してください)
- 種類を STDIO に設定します
- コマンドには、Node 実行ファイルのフルパスに続けて
mcpServer.jsのフルパスを指定します
必要なパスを取得するには、ターミナルで次のコマンドを実行します。
# Get the full path to node
which node
# Get the full path to mcpServer.js
realpath mcpServer.js
# Check your node version (should be 18+)
node --version
コマンドの形式例:
/usr/local/bin/node /full/path/to/TfL-Status-MCP-Server/mcpServer.js
ステップ 3:ツールをテストする
- Postman MCP Request で Connect をクリックします
- TfL の 3 つのツールが一覧に表示されます
- 各ツールをテストします。
lineId: "central"を指定してget_line_statusを試しますfromLocation: "King's Cross"とtoLocation: "Westminster"を指定してplan_journeyを試しますlineId: "piccadilly"を指定してget_line_status_detailを試します
Postman ですべてのツールが正しく動作すれば、AI アシスタントに接続する準備は完了です。
🤖 AI アシスタントに接続する
Postman でのテストが済んだら、MCP サーバーを AI アシスタントに接続できます。
ローカル開発環境のセットアップ(オプション 2)の場合
ローカル開発環境のセットアップを使用している場合は、フルパスを指定する必要があります。
Claude Desktop
ステップ 1:Postman でのテスト時に使用したものと同じ Node と mcpServer.js のパスを使用します。
ステップ 2:Claude Desktop → Settings → Developers → Edit Config を開き、次を追加します。
{
"mcpServers": {
"london-transport": {
"command": "node",
"args": ["/full/path/to/mcpServer.js"]
}
}
}
ステップ 3:Claude Desktop を再起動し、MCP サーバーに緑色の丸が表示されることを確認します。
VS Code GitHub Copilot
ステップ 1:まだインストールしていない場合は、VS Code に GitHub Copilot 拡張機能をインストールします。
ステップ 2:VS Code → Settings(Ctrl+,)を開き、「MCP」を検索して、GitHub Copilot › MCP: Servers を選択します。
ステップ 3:TfL MCP サーバーの設定を追加します。
{
"london-transport": {
"command": "node",
"args": ["/full/path/to/mcpServer.js"]
}
}
ステップ 4:VS Code を再起動すると、GitHub Copilot で MCP サーバーを利用できるようになります。
これで、AI アシスタントに次のようなことを尋ねられます。
- 「Central 線の運行状況を確認して」
- 「London Bridge から Camden Town までの経路を計画して」
その他のオプション
🛠️ 利用可能なツールの一覧表示
利用可能なすべてのツールとそのパラメーターを表示します。
npm run list-tools
🚀 Postman とのクイック連携
正しい MCP 設定を適用して Postman を自動的に開きます。
npm run postman
🐳 Docker によるデプロイ(本番環境)
本番環境にデプロイする場合は、Docker を使用できます。
1. Docker イメージをビルドする
docker build -t <your_server_name> .
2. AI アシスタントとの連携
AI アシスタントに Docker サーバーの設定を追加します。
Claude Desktop の場合(Settings → Developers → Edit Config):
{
"mcpServers": {
"tfl-status": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file=.env", "tfl-mcp-server"]
}
}
}
VS Code GitHub Copilot の場合(Settings → GitHub Copilot › MCP: Servers):
{
"tfl-status": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file=.env", "tfl-mcp-server"]
}
}
環境変数(API キーなど)は
.envファイルに追加してください。
このプロジェクトには、次の最小構成の Docker セットアップが含まれています。
FROM node:22.12-alpine AS builder
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm install
COPY . .
ENTRYPOINT ["node", "mcpServer.js"]
🌐 Streamable HTTP
Streamable HTTP を使用してサーバーを実行するには、--streamable-http フラグを使用します。これにより、/mcp エンドポイントが有効になります。
node mcpServer.js --streamable-http
🌐 Server-Sent Events(SSE)
Server-Sent Events(SSE)を使用してサーバーを実行するには、--sse フラグを使用します。これにより、/sse エンドポイントと /messages エンドポイントが有効になります。
node mcpServer.js --sse
🖥️ Stdio(標準入力/出力)
標準入力/出力(stdio)を使用してサーバーを実行するには、フラグを付けずにスクリプトを実行します。このモードは、CLI ツールや stdin と stdout を介したプログラム連携に最適です。
node mcpServer.js
🛠️ サーバーの拡張
TfL API のエンドポイントやその他の交通機関 API を追加するには、次の手順に従います。
tools/tfl/ディレクトリに新しいツールファイルを作成しますtools/tfl/status.jsなど、既存のツールのパターンに従います- 新しいツールファイルを
tools/paths.jsに追加します - デプロイする前に Postman でテストします
📚 API リファレンス
このサーバーは Transport for London Unified API を使用します。すべてのツールには、.env ファイルに記載された API キーが自動的に含まれます。
➕ 新しいツールの追加
MCP サーバーは、簡単にツールを追加して拡張できます。
- Postman MCP Generator にアクセスします。
- 新しい API リクエストを選択し、新しい MCP サーバーを生成してダウンロードします。
- 生成された新しいツールを既存のプロジェクトの
tools/フォルダーにコピーします。 - 新しいツールへの参照を含めるよう、
tools/paths.jsファイルを更新します。
💬 質問とサポート
最新情報や新機能については、Postman MCP Generator のページをご覧ください。
作成したものを共有したり、サポートを受けたりするには、Postman Discord の #mcp-lab チャンネルにご参加ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。