MCP&Agent挑战赛 12306查询工具
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"mcp_12306": {
"args": [
"--from",
"mcp-12306==0.1.8",
"mcp_12306"
],
"command": "uvx"
}
}
}
可用工具 (4 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
query_tickets 4 个参数 需填 2 项
查询火车票信息,只需要传入出发车站名、到达车站名、出发日期、乘客类型,如: 北京, 汉口, 2025-07-15, ADULT
必填参数:from_station、to_station
query_train_info 2 个参数 需填 2 项
查询火车车次信息,包括时刻表、途径站、停靠时间等信息
必填参数:train_no、train_date
query_train_price 3 个参数 需填 3 项
查询火车的车票价格,需要出发车站名,到达车站名,出发日期
必填参数:from_station、to_station、train_date
get_station_code 1 个参数 需填 1 项
获取车站中文名的code(代号/代码)
必填参数:station_name
服务介绍
mcp_12306
项目简介
mcp_12306 是一个基于 MCP(Model Context Protocol)协议的 12306 火车票查询服务端项目。
它支持通过自然语言或 API 查询中国铁路 12306 的余票信息、车站代码等,并支持 Redis 缓存加速查询。
主要功能
-
火车票余票查询
支持指定出发站、到达站、出发日期、乘客类型(成人/学生)等参数,查询 12306 实时余票信息。 -
车站代码/名称查询
可根据车站中文名查询对应的 12306 车站代码,或反查车站名称。 -
Redis 缓存支持
查询结果可自动缓存到 Redis,提升高频查询性能。 -
MCP 工具集成
以工具(tool)的形式对外暴露接口,便于 LLM/自动化系统集成。 -
命令行参数灵活
支持自定义服务端口、传输方式(stdio/sse)、是否启用 Redis 等。
安装与运行
1. 安装依赖
bash
uv pip install mcp-12306
2. 启动 Redis(可选)
如需启用 Redis 缓存,需先启动本地 Redis 服务(默认端口 6379)。
bash
Linux
redis-server
Windows(需提前安装 Redis for Windows 或 Memurai)
redis-server.exe
3. 启动服务
3.1 python 启动
进入 mcp_12306 目录后,使用以下命令启动服务:
bash
python -m mcp_12306 --redis 6379
3.2 uvx 启动
不带 Redis 启动:
bash
uvx mcp-12306
带 Redis 启动:
bash
uvx mcp-12306 --redis 6379
--redis:指定 Redis 端口,不填则不启用 Redis
主要接口/工具
query_tickets:查询火车票信息- 参数:
from_station(出发站),to_station(到达站),train_date(出发日期),purpose_codes(乘客类型)
- 参数:
get_station_code:获取车站代码- 参数:
station_name(车站中文名)
- 参数:
get_station_name:获取车站名称- 参数:
station_code(车站代码)
- 参数:
query_train_info:查询车次信息- 参数:
train_no(车次),train_date(出发日期)
- 参数:
query_train_price:查询车次价格- 参数:
from_station(出发站),to_station(到达站),train_date(出发日期)
- 参数:
项目结构
plaintext
mcp_12306/
├── LICENSE
├── mcp_12306/
│ ├── init.py
│ ├── main.py
│ ├── mcp_12306_server.py
│ ├── query_12306.py
│ └── station.txt
├── mcp_12306.egg-info/
├── pyproject.toml
├── README.md
└── uv.lock
后续工作计划
- 支持更多 12306 查询接口
- 车次时刻表
- 车票价格查询
- 列车中转查询
- 增强异常处理与日志记录
- 提供 Web UI 或 API 文档
- 支持 Docker 一键部署
- 国际化与多语言支持
贡献与反馈
如有疑问可联系维护者:zhengchenguang315@gmail.com