DB Timetable MCP Server

DB Timetable MCP Server

site icon
2025.03.24 1
TypeScript地图服务交通信息位置服务
DB Timetable MCP Server 是一个基于德国铁路时刻表API的Model Context Protocol (MCP)服务器。该服务器提供MCP工具和资源,用于访问列车时刻表数据、车站信息和列车变更信息。核心功能包括获取当前时刻表、跟踪最新变更、访问计划时刻表以及按名称或代码搜索车站。适用于需要集成德国铁路时刻表数据的开发者和应用程序。
View on GitHub

Overview

基本能力

产品定位

DB Timetable MCP Server 是一个专门用于访问和操作德国铁路时刻表数据的MCP服务器。

核心功能

  • 当前时刻表:获取指定车站的当前列车时刻表数据。
  • 时刻表变更:跟踪指定车站的最新列车变更信息。
  • 计划时刻表:获取指定车站、日期和小时的计划列车时刻表数据。
  • 车站搜索:根据名称或代码搜索车站。

适用场景

  • 开发需要集成德国铁路时刻表数据的应用程序。
  • 实时跟踪列车变更信息的系统。
  • 车站信息查询和搜索功能。

工具列表

  1. getCurrentTimetable:获取指定车站的当前时刻表数据。
  2. getRecentChanges:获取指定车站的最新变更信息。
  3. getPlannedTimetable:获取指定车站、日期和小时的计划时刻表数据。
  4. findStations:根据名称或代码搜索车站。

常见问题解答

  • API访问:需要从德国铁路开发者门户获取Client-ID和Client-Secret。
  • 数据使用:所有数据使用需遵守Creative Commons Attribution 4.0 International License。

使用教程

使用依赖

  • Node.js 18或更高版本。
  • 德国铁路时刻表API的Client-ID和Client-Secret。

安装教程

  1. 克隆仓库: bash git clone <repository-url> cd db-mcp
  2. 安装依赖: bash npm install
  3. 编译TypeScript代码: bash npm run build

配置

在项目根目录创建.env文件,包含以下环境变量:

DB_TIMETABLE_CLIENT_ID=your-client-id
DB_TIMETABLE_CLIENT_SECRET=your-client-secret
TRANSPORT_TYPE=stdio
PORT=8080
SSE_ENDPOINT=/sse
LOG_LEVEL=info

调试方式

  1. 在stdio模式下启动服务器: bash npm start
  2. 在SSE模式下启动服务器: bash TRANSPORT_TYPE=sse npm start
  3. 使用FastMCP Inspector测试: bash npx fastmcp inspect path/to/index.js

许可证

该项目遵循 MIT 开源许可条款。