mcpField
Y
Yht Bilet Mcp Server

Yht Bilet Mcp Server

本地服务
github.com/Cihatata地图与出行044 周前更新

关于 Yht Bilet Mcp Server

此 TypeScript MCP 服务通过 TCDD API 查询土耳其高速列车票。它可解析车站名称并按路线和日期查询余票,还支持乘客人数及轮椅座位选项。

主要功能

  1. 01查询车票余量
  2. 02将车站名称解析为 ID
  3. 03按 API 要求格式化日期
  4. 04设置乘客人数
  5. 05筛选轮椅无障碍座位
  6. 06仅显示尚未发车的列车

适用场景

  1. 01查询两个车站之间的车票
  2. 02为多人搜索指定出行日期
  3. 03选择包含或排除轮椅无障碍座位

MCP 相关

向 MCP 客户端提供 `search_train_ticket` 工具,接受路线、日期、乘客人数和轮椅座位选项,通过 TCDD API 查询余票。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

YHT Bilet MCP 服务

一个通过 TCDD API 搜索土耳其列车(YHT/高速列车)车票的模型上下文协议(MCP)服务。

使用 MCP TypeScript SDK 构建

License: MIT TypeScript MCP

✨ 功能

  • 🚄 从 TCDD API 获取实时车票余量
  • 🗺️ 站名到 ID 的映射 - 自动解析车站
  • 📅 智能日期格式化 - 自动按 API 要求格式化日期(提前 1 天的 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. 从请求标头中复制 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

参数
参数类型必填默认值描述
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 文件


❤️ 为土耳其铁路社区倾情打造

需要帮助?提交 issue

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。