一站式航铁票务查询 实时动态智能追踪
MCP Server 航班管家
版本: v1
产品描述
短描述(20字): 一站式航铁票务查询 实时动态智能追踪
长描述(50-100字): 覆盖机票、火车票实时查询,航铁动态精准追踪,内置铁路航空领域知识库,解答出行高频问题,为MCP广场用户提供一站式出行信息服务
分类: 出行服务
标签: 票务查询,实时动态,航铁问答,出行资讯
功能特性
本 MCP Server 产品提供以下 Tools(工具/能力):
Tool1: 航铁票务实时查询
详细描述
支持机票、火车票实时查询,根据出发地、目的地、出行日期,快速返回对应航班/车次核心信息,高效满足出行票务查询需求
调试所需的输入参数
输入:
- 出发地(字符串):出行的起始地点
- 目的地(字符串):出行的目的地
- 出行日期(字符串):计划出行的具体日期
- 票务类型(字符串):机票/火车票
输出:
- 对应航班/车次的实时信息,含编号、出发到达时间、坐席/舱位等相关内容
最容易被唤起的 Prompt 示例
帮我查询明天北京到上海的火车票
Tool2: 航铁动态精准追踪
详细描述
支持列车、航班动态实时查询,返回列车位置、检票口等信息及航班起降、登机口等状态,同步说明延误等异常原因
调试所需的输入参数
输入:
- 航铁编号(字符串):列车车次/航班号
- 查询类型(字符串):列车动态/航班动态
输出:
- 对应航铁的实时动态信息,含位置/状态、配套设施、异常原因等
最容易被唤起的 Prompt 示例
帮我看看G123次列车现在到哪了
Tool3: 航铁知识智能问答
详细描述
内置铁路、航空领域知识库,针对票务政策、退改签、行李规定等高频问题,快速给出精准、规范的解答
调试所需的输入参数
输入:
- 问题内容(字符串):铁路/航空领域的出行相关问题
输出:
- 基于知识库的专业、准确的问题解答内容
最容易被唤起的 Prompt 示例
学生票每年能买几次,要什么证件核验
可适配平台
方舟,Python,Cursor
前置要求
- Python >= 3.11
- TripNow API Key(需要从产品服务开通链接提交申请获取)
鉴权方式
APIKey:通过产品服务开通链接提交申请,审核通过后获取专属APIKey,调用接口时在请求头中携带该APIKey完成鉴权
服务开通链接(整体产品): [产品服务开通链接待补充]
安装部署
客户部署服务(情况一)
若客户采用此方式,需提供 api key 以直接调取服务,具体步骤如下:
- 从产品服务开通链接提交申请,获取专属APIKey;
- 查阅产品官方接口文档,按规范构造请求参数;
- 在自有系统/平台中集成接口,请求时携带APIKey;
- 接收接口返回的JSON格式数据,解析并展示。
安装步骤
1. 克隆或下载项目
cd tripnow-mcp
2. 安装依赖
pip install -r requirements.txt
或者使用 pip 直接安装:
pip install httpx>=0.25.0 mcp>=1.0.0 pydantic>=2.0.0
配置 API Key
在 MCP 客户端配置中,可以通过 HTTP Header 传递 API Key:
tripnow-api-key
在 MCP 客户端配置中,可以通过环境变量 `tripnow_api_key` 传递 API Key。
tripnow_api_key
使用方法
一、STDIO 方式(本地运行)
Python 方式:直接运行
python api_mcp.py
在 MCP 客户端中配置
在您的 MCP 客户端配置文件(如 Cursor 的 mcp.json)中添加:
{
"mcpServers": {
"tripnow": {
"command": "python",
"args": [
"/path/to/tripnow-mcp/api_mcp.py"
],
"env": {
"tripnow_api_key": "YOUR_API_KEY"
}
}
}
}
二、Streamable HTTP 方式(推荐)
如果您的 MCP 服务器部署在远程服务器上,可以使用 Streamable HTTP 方式:
{
"mcpServers": {
"tripnow": {
"url": "https://tripnowengine.133.cn/mcp",
"headers": {
"tripnow-api-key": "YOUR_API_KEY"
}
}
}
}
API 工具说明
chat_completions
调用 TripNow 旅行助手 API,可以查询火车票、机票、酒店等旅行相关信息。该工具支持以下三种主要功能:
- 航铁票务实时查询:根据出发地、目的地、出行日期查询机票或火车票信息
- 航铁动态精准追踪:根据航铁编号查询列车或航班的实时动态信息
- 航铁知识智能问答:回答铁路、航空领域的出行相关问题
参数说明
messages(List[dict]): 消息列表,支持多轮对话- 每个消息包含:
role(str): 消息角色,如'user','assistant','system'content(str): 消息内容
- 每个消息包含:
返回格式
返回标准的 ChatCompletion 响应,包含:
- 模型回复内容
- Token 使用统计
- 响应元数据
使用示例
示例 1:航铁票务实时查询
# 查询火车票
messages = [
{
"role": "user",
"content": "帮我查询明天北京到上海的火车票"
}
]
# 调用 chat_completions 工具
result = await chat_completions(messages=messages)
# 查询机票
messages = [
{
"role": "user",
"content": "帮我查一下北京到上海的机票,日期是2024年12月25日"
}
]
示例 2:航铁动态精准追踪
# 查询列车动态
messages = [
{
"role": "user",
"content": "帮我看看G123次列车现在到哪了"
}
]
# 查询航班动态
messages = [
{
"role": "user",
"content": "CA1234航班现在什么状态"
}
]
示例 3:航铁知识智能问答
# 询问票务政策
messages = [
{
"role": "user",
"content": "学生票每年能买几次,要什么证件核验"
}
]
# 询问退改签政策
messages = [
{
"role": "user",
"content": "火车票退票手续费怎么算"
}
]
示例 4:多轮对话查询
# 第一轮:查询机票
messages = [
{
"role": "user",
"content": "我想从北京飞往上海"
}
]
# 第二轮:继续对话
messages.append({
"role": "assistant",
"content": "为您找到了以下航班..."
})
messages.append({
"role": "user",
"content": "帮我看看最早那班的状态"
})
响应格式示例
成功响应
## TripNow 旅行助手回复
- **模型**: tripnow-travel-pro
- **响应ID**: chatcmpl-xxx
### 回复内容
为您找到了以下从北京到长沙的火车班次:
1. G501 次,08:00-14:30,二等座 ¥553
2. G503 次,10:00-16:30,二等座 ¥553
...
### Token使用统计
- **提示词Token**: 25
- **完成Token**: 150
- **总Token**: 175
错误响应
如果 API Key 未设置或无效,会返回错误信息:
⚠️ **错误**: error: tripnow-api-key not set
项目结构
tripnow-mcp/
├── api_mcp.py # MCP 服务器主文件
├── models.py # 数据模型定义
├── markdown_utils.py # Markdown 工具函数
├── requirements.txt # Python 依赖
├── pyproject.toml # 项目配置
└── README.md # 本文件
开发说明
运行开发服务器
python api_mcp.py
服务器将启动在 Streamable HTTP 模式下,可以通过 HTTP 请求调用。
代码结构说明
api_mcp.py:
- 定义 MCP 服务器实例
- 实现
chat_completions工具 - 处理 API Key 获取和 HTTP 请求
models.py:
Message: 消息模型ChatCompletionResponse: API 响应模型ErrorResponse: 错误响应模型
markdown_utils.py:
- 提供 Markdown 格式化工具函数
常见问题
Q1: 如何获取 TripNow API Key?
A: 请访问 TripNow 官方网站或联系客服获取 API Key。
Q2: API Key 应该放在哪
Tools (1)
chat_completions调用 TripNow 旅行助手 API for real-time flight/train ticket queries, status tracking, and knowledge Q&A.Environment Variables
tripnow_api_keyrequiredAPI Key for TripNow service authentication via environment variableConfiguration
{
"mcpServers": {
"tripnow": {
"url": "https://tripnowengine.133.cn/mcp",
"headers": {
"tripnow-api-key": "YOUR_API_KEY"
}
}
}
}