mcpField
Y
Yht Bilet Mcp Server

Yht Bilet Mcp Server

ローカル
github.com/Cihatata地図・旅行044 週間前に更新

Yht Bilet Mcp Server について

TCDD APIを通じてトルコの高速列車のチケットを検索するTypeScript製MCPサーバーです。駅名を解決して路線と日付の空席を調べ、人数や車いす対応席も指定できます。

主な機能

  1. 01チケットの空席を確認
  2. 02駅名をIDに解決
  3. 03API用に日付を整形
  4. 04乗客数を指定
  5. 05車いす対応席を絞り込み
  6. 06発車前の列車のみ表示

活用シーン

  1. 012駅間のチケットを確認
  2. 02複数人分を指定日で検索
  3. 03車いす対応席を含めるか選択

MCP 対応

路線、日付、乗客数、車いす対応席の条件を受け取り、TCDD APIで空席を検索する`search_train_ticket`ツールをMCPクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

YHT Bilet MCP サーバー

TCDD API を介してトルコの列車(YHT/高速列車)のチケットを検索する Model Context Protocol(MCP)サーバーです。

MCP TypeScript SDK を使用して構築されています。

License: MIT TypeScript MCP

✨ 特長

  • 🚄 TCDD API からのリアルタイムのチケット空席状況
  • 🗺️ 駅名から ID へのマッピング — 駅を自動的に特定
  • 📅 スマートな日付形式 — API 用の日付形式に自動変換(前日の 21:00)
  • 👥 乗客数の指定に対応 — 複数の乗客で検索可能
  • ♿ 車椅子対応座席フィルター — 車椅子対応座席を含めるかどうかを選択可能
  • ✅ Zod によるスキーマ検証
  • 🎯 未来の列車のフィルタリング — 出発済みでない列車のみを表示
  • 📦 オブジェクト指向アーキテクチャ — 明快で保守しやすく、テスト可能なコード

📋 目次

🚀 クイックスタート

# 1. Clone the repository
git clone https://github.com/yourusername/yht-bilet-mcp.git
cd yht-bilet-mcp

# 2. Install dependencies
npm install

# 3. Create environment file
cp .env.example .env

# 4. Add your TCDD authorization token to .env
# (See "Getting Authorization Token" section below)

# 5. Build the project
npm run build

# 6. Add to Claude Desktop config (see Configuration section)

📦 インストール

前提条件
  • Node.js 18+
  • npm または yarn
  • Claude Desktop または MCP 対応クライアント
手順
1. 依存関係をインストールする
npm install
2. 環境変数を設定する

環境変数のサンプルファイルをコピーします。

cp .env.example .env
3. 認証トークンを取得する
  1. TCDD E-Ticket Website にアクセスします。
  2. ブラウザーの開発者ツール(F12)を開きます。
  3. Network タブを開きます。
  4. チケットを検索します。
  5. train-availability リクエストを見つけます。
  6. Request Headers から Authorization ヘッダーの値をコピーします。
  7. .env ファイルに貼り付けます。
AUTH_TOKEN=eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldU...

注: 認証トークンは一定時間が経過すると有効期限が切れます。認証エラーが発生した場合は、新しいトークンを取得してください。

4. プロジェクトをビルドする
npm run build

🎮 使い方

Claude Desktop への追加

MCP クライアントの設定にサーバーを追加します。

macOS:~/Library/Application Support/Claude/claude_desktop_config.json

Windows:%APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "yht-bilet": {
      "command": "node",
      "args": [
        "/absolute/path/to/yht-bilet-mcp/build/index.js"
      ]
    }
  }
}

重要: 相対パスではなく、絶対パスを使用してください。

利用可能なツール

このサーバーは search_train_ticket ツールを 1 つ提供します。

パラメーター
パラメーター型必須デフォルト説明
fromstringはい-出発駅名(例:「Ankara」)
tostringはい-到着駅名(例:「Eskişehir」)
datestringはい-YYYY-MM-DD 形式の乗車日(例:「2025-12-25」)
passengerCountnumberいいえ1乗客数
includeWheelchairSeatsbooleanいいえtrue結果に車椅子対応座席を含めるかどうか
使用例

Claude Desktop では、次のように依頼できます。

Are there any train tickets from Ankara to Eskişehir on December 25, 2025 for 2 passengers?

MCP クライアントは、これを次のように変換します。

{
  "from": "Ankara",
  "to": "Eskişehir",
  "date": "2025-12-25",
  "passengerCount": 2,
  "includeWheelchairSeats": true
}

車椅子対応座席を除外する場合:

Find train tickets from Ankara to Eskişehir on December 25, 2025, but don't show wheelchair seats.
応答形式

サーバーは、次の内容を含む整形済みテキストを返します。

  • ✅/✗ 成功/失敗を示すインジケーター
  • 🚂 列車の営業名称
  • ⏰ 出発時刻と到着時刻
  • 💰 最低料金
  • 📍 利用可能な客室クラスと座席数

応答例:

✓ Ankara - Eskişehir arası 27.12.2025 tarihi için 3 adet tren sefer bulundu.

🚂 YHT ESKİŞEHİR - ANKARA (11:30 - 12:54):
   Minimum Fiyat: 390 TL
   
   📍 Müsait Kabinler:
      • BUSİNESS: 39 koltuk
      • EKONOMİ: 86 koltuk
      • TEKERLEKLİ SANDALYE: 2 koltuk
...

📝 ライセンス

MIT License — 詳細は LICENSE ファイルを参照してください。


トルコの鉄道コミュニティのために ❤️ を込めて作成

お困りですか?issue を作成してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。