Skip to main content
Glama
12306-mcp
by Joooook

12306-mcp

A 12306 ticket search server based on the Model Context Protocol (MCP). The server provides a simple API interface that allows users to search for 12306 tickets.

基于 Model Context Protocol (MCP) 的12306购票搜索服务器。提供了简单的API接口,允许大模型利用接口搜索12306购票信息。

如需Skill -> https://github.com/Joooook/12306-skill

🚩Features

功能描述

状态

查询12306购票信息

✅ 已完成

过滤列车信息

✅ 已完成

过站查询

✅ 已完成

中转查询

✅ 已完成

其余接口,欢迎提feature

🚧 计划内

Related MCP server: 12306 Train Ticket Search MCP Server

⚙️Installation

git clone https://github.com/Joooook/12306-mcp.git
npm i

▶️Quick Start

CLI-stdio

npx -y 12306-mcp

CLI-http

npx -y 12306-mcp --port [端口号]

Runtime requirements

The server requires Node.js 18 or newer. The npm run debug command uses MCP Inspector 2.0.0, which requires Node.js 22.19.0 or newer.

MCP sever configuration

{
    "mcpServers": {
        "12306-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "12306-mcp"
            ]
        }
    }
}

Docker-stdio

docker build . -t 12306-mcp
docker run --rm -it 12306-mcp npx 12306-mcp

Docker-http

docker build . -t 12306-mcp
docker run -p [your_port]:8080 -d 12306-mcp npx 12306-mcp --port 8080

📚Documentation

👉️Reference

💭Murmurs

本项目仅用于学习,欢迎催更。

🎫Badges

☕️Donate

请我喝杯奶茶吧。

Available Tools

8 tools
get-current-dateA

获取当前日期,以上海时区(Asia/Shanghai, UTC+8)为准,返回格式为 "yyyy-MM-dd"。主要用于解析用户提到的相对日期(如“明天”、“下周三”),提供准确的日期输入。

Inputs: no named parameters.

get-interline-ticketsB

查询12306中转余票信息。尚且只支持查询前十条。

Inputs: date (required), toStation (required), fromStation (required), format, +8 more.

get-station-by-telecodeA

通过车站的 station_telecode 查询车站的详细信息,包括名称、拼音、所属城市等。此接口主要用于在已知 telecode 的情况下获取更完整的车站数据,或用于特殊查询及调试目的。一般用户对话流程中较少直接触发。

Inputs: stationTelecode (required).

get-station-code-by-namesA

通过具体的中文车站名查询其 station_code 和车站名。

Inputs: stationNames (required).

get-station-code-of-citysB

通过中文城市名查询代表该城市的 station_code。

Inputs: citys (required).

get-stations-code-in-cityB

通过中文城市名查询该城市 所有 火车站的名称及其对应的 station_code,结果是一个包含多个车站信息的列表。

Inputs: city (required).

get-ticketsB

查询12306余票信息。

Inputs: date (required), toStation (required), fromStation (required), format, +6 more.

get-train-route-stationsA

查询特定列车车次在指定区间内的途径车站、到站时间、出发时间及停留时间等详细经停信息。当用户询问某趟具体列车的经停站时使用此接口。

Inputs: trainCode (required), departDate (required), format.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 8 tools

    Disambiguation4/5

    Most tools have distinct purposes (date, tickets, interline tickets, station queries by different criteria, train route). However, get-station-code-by-names and get-station-code-of-citys could be confused as both involve station codes, but descriptions clarify the input type.

    Naming Consistency3/5

    All tools follow get-<resource>-<detail> pattern with snake_case, but there are inconsistencies: 'citys' is a typo, and some use singular 'station' while others use plural 'stations' (e.g., get-stations-code-in-city vs get-station-code-by-names).

    Tool Count4/5

    8 tools cover core query needs for a train information server (date, tickets, stations, routes). Not excessive or insufficient, though a tool for train number details might be expected.

    Completeness4/5

    Covers essential queries: date, tickets, interline tickets, station codes by multiple methods, station details, and train routes. Missing price or order-related queries, but the scope is focused on info retrieval.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      A Model Context Protocol server that allows large language models to search for and analyze Chinese railway (12306) tickets through a simple API interface.
      8
      13,273 npm
      19
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      12306 ticket purchase search server based on Model Context Protocol (MCP). It provides a simple API interface, allowing large models to search for 12306 ticket purchasing information through the interface.
      8
      1
      Apache 2.0