返回 MCP 目录
public公开dns本地运行

db-timetable-mcp

DB Timetable MCP Server是一个基于德国铁路时刻表API的模型上下文协议服务器,提供访问列车时刻表、车站信息和变更数据的工具与资源。

article

README

🚀 德国铁路 (DB) 时间表 MCP 服务器

这是一个基于 Node.js 的 MCP 服务器,用于处理德国铁路(Deutsche Bahn, DB)的时间表数据。该项目为开发者提供了一个接口,方便他们访问和查询 DB 的实时和计划中的列车信息。

🚀 快速开始

安装要求

  • Node.js 版本:18 或更高版本
  • 德国铁路 API 凭证:需要客户端 ID 和秘密,用于身份验证

安装步骤

  1. 克隆项目仓库到本地:
    git clone <repository-url>
    
  2. 进入项目目录:
    cd db-mcp
    
  3. 安装依赖项:
    npm install
    
  4. 构建 TypeScript 代码:
    npm run build
    

配置

创建一个 .env 文件,包含以下环境变量:

CLIENT_ID=your_client_id_here
CLIENT_SECRET=your_client_secret_here
PORT=3000

这些信息用于身份验证和连接到 DB 的时间表 API。

启动服务器

可以通过以下 npm 脚本启动服务器:

npm start

默认情况下,服务器将在 process.env.PORT 端口(默认为 3000)上运行。

开发模式

在开发模式下,服务器会自动重新加载以响应代码更改:

npm run dev

✨ 主要特性

MCP 工具

  1. 获取当前时间表
    • 端点:db-api:timetable/current/{evaNo}
    • 参数:{evaNo}(车站编号)
  2. 获取最近的变更
    • 端点:db-api:timetable/changes/{evaNo}
    • 参数:{evaNo}(车站编号)
  3. 获取计划的时间表
    • 端点:db-api:timetable/planned/{evaNo}/{date}/{hour}
    • 参数:{evaNo}(车站编号)、{date}(日期)、{hour}(小时)
  4. 车站搜索
    • 端点:db-api:station/{pattern}
    • 参数:{pattern}(搜索关键字)

MCP 资源

  1. 当前时间表数据db-api:timetable/current/{evaNo}
  2. 计划时间表数据db-api:timetable/planned/{evaNo}/{date}/{hour}
  3. 车站搜索结果db-api:station/{pattern}

📦 安装指南

安装要求

  • Node.js 版本:18 或更高版本
  • 德国铁路 API 凭证:需要客户端 ID 和秘密,用于身份验证

安装步骤

  1. 克隆项目仓库到本地:
    git clone <repository-url>
    
  2. 进入项目目录:
    cd db-mcp
    
  3. 安装依赖项:
    npm install
    
  4. 构建 TypeScript 代码:
    npm run build
    

💻 使用示例

基础用法

启动服务器:

npm start

默认情况下,服务器将在 process.env.PORT 端口(默认为 3000)上运行。

高级用法

在开发模式下,服务器会自动重新加载以响应代码更改:

npm run dev

📚 详细文档

项目结构

db-mcp/
├── src/                 # 源代码目录
│   ├── api/             # API 客户端和类型定义
│   ├── tools/           # MCP 工具
│   ├── resources/       # MCP 资源
│   ├── utils/           # 辅助函数
│   ├── config.ts        # 配置文件
│   └── index.ts         # 入口点
├── dist/                # 编译后的代码
├── .env                 # 环境变量文件
├── package.json         # 依赖管理和脚本
├── tsconfig.json        # TypeScript 配置
└── README.md            # 项目文档

脚本

  • npm run build:构建 TypeScript 代码
  • npm start:启动服务器
  • npm run dev:启动开发模式(自动重新加载)
  • npm test:运行测试套件

🔧 技术细节

扩展性

潜在扩展方向

  1. 数据处理和增强
    • 将 XML 时间表数据转换为结构化的 JSON 格式,并进行语义增强
    • 历史数据分析,用于延迟和中断的预测
    • 多模式交通连接整合
  2. 增强的 MCP 工具
    • 路线规划功能(车站间)
    • AI 驱动的延迟和负载预测
    • 旅行干扰分析
    • 站点无障碍性检查

📄 许可证

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端