航班管家航空数据 MCP
航班管家 DAST 官方航空数据 MCP,提供航班动态、延误预测、机场天气、飞行轨迹及航班舒适度等数据能力。
Dokümantasyon
航班管家 MCP Agent 文档
- MCP 产品首页:https://dast.133.cn/mcp/
- DAST Platform:https://dast.133.cn
- Remote MCP Endpoint:https://fly.huoli.com/mcp/dast_mcp
- STDIO npm Package:https://www.npmjs.com/package/@flightmaster/aviation-dast-mcp
- 官方文档地址:https://dast.133.cn/mcp_assets/agent.md
- Official GitHub:https://github.com/flight-master-dast/aviation-data-mcp
- Official MCP Registry:
io.github.flight-master-dast/aviation-data-mcp - 支持的连接模式:Remote Streamable HTTP / STDIO
- 当前 Tool 数量:9
本文件用于 AI Agent、AI 编程工具及其他自动化客户端直接读取,用于快速理解航班管家 MCP 数据平台的能力、连接方式、工具选择方式、调用参数、返回结构及调用限制。
当前 9 个 Tool 包含两类能力:
- 航班实时/查询类:航班动态、机场对航班、航班舒适度、未来延误预测、机场未来天气、飞行轨迹。
- 运行统计/报表类:全国民航每日总览、国内机场运行数据统计、国内航司运行数据统计。
其中 3 个报表类 Tool 调用成功后返回 1 小时有效的 Excel 下载链接;各 Excel 的 Sheet、字段与数据口径见本文档 ## EXCEL_SHEET_FIELDS。调用报表类 Tool 生成文件时按次计费,使用返回的链接下载文件不重复计费。
如果本文件与 MCP Server 实时返回的 tools/list 存在差异,以 tools/list 返回的 Tool Schema 为准。
document_url:
https://dast.133.cn/mcp_assets/agent.md
PLATFORM
DAST platform:
https://dast.133.cn
purpose:
- 用户注册
- 用户登录
- MCP 控制台
- 创建 API Key
- 账户充值
- 查看用量与账单
重要说明:
DAST platform
-> https://dast.133.cn
Remote MCP Endpoint
-> https://fly.huoli.com/mcp/dast_mcp
STDIO npm Package
-> @flightmaster/aviation-dast-mcp
不得将 Remote MCP Endpoint 作为 DAST 平台地址使用。
MCP_CONNECTION_MODES
name:
航班管家航空数据 MCP | Flight Master Aviation Data MCP
protocol:
MCP (Model Context Protocol)
supported_connection_modes:
1. Remote MCP via Streamable HTTP
2. Local MCP via STDIO
recommended_mode:
Remote MCP via Streamable HTTP
选择规则:
客户端支持 Remote Streamable HTTP
-> 默认优先使用 Remote MCP
客户端仅支持 STDIO
-> 使用 STDIO
用户明确要求 npm / npx / STDIO
-> 使用 STDIO
除非用户明确要求,不要同时配置两种模式。
REMOTE_MCP
endpoint:
https://fly.huoli.com/mcp/dast_mcp
transport:
Streamable HTTP
rpc:
JSON-RPC 2.0
http_method:
POST
上述方法适用于 Remote MCP JSON-RPC 请求。报表类 Tool 返回的 file_url 使用 HTTP GET 下载,不属于 MCP JSON-RPC 请求。
content_type:
application/json
encoding:
UTF-8
authentication:
Authorization: Bearer <API_KEY>
Remote MCP 适合:
- 支持远程 MCP Server 的 AI Agent
- 支持 Streamable HTTP 的 MCP Client
- 不希望在本地安装 MCP Server 的用户
- Hosted AI / coding clients
STDIO_MCP
package:
@flightmaster/aviation-dast-mcp
npm:
https://www.npmjs.com/package/@flightmaster/aviation-dast-mcp
command:
npx -y @flightmaster/aviation-dast-mcp
transport:
STDIO
required_environment_variables:
DAST_API_KEY=<API_KEY>
optional_environment_variables:
DAST_MCP_URL=<CUSTOM_GATEWAY_URL>
说明:
DAST_API_KEY 为必填环境变量。
缺少 DAST_API_KEY 时,STDIO 进程无法正常启动并会退出。
DAST_MCP_URL 为可选项,正常情况下不应设置。
只有需要覆盖默认 Flight Master DAST MCP Gateway 时才使用 DAST_MCP_URL。
STDIO MCP 适合:
- 仅支持本地 STDIO MCP Server 的客户端
- 用户明确要求 npm / npx / STDIO 接入
- 本地开发工具需要通过标准输入输出启动 MCP Server
AUTHENTICATION
API Key 由用户登录 DAST 平台后,在 MCP 控制台创建。
DAST platform:
https://dast.133.cn
以上平台用于:
- 用户注册
- 用户登录
- 创建 API Key
- 账户充值
- 查看用量与账单
Remote MCP authentication
Remote MCP endpoint:
https://fly.huoli.com/mcp/dast_mcp
Remote MCP 请求必须携带:
Authorization: Bearer <API_KEY>
STDIO MCP authentication
STDIO 使用环境变量:
DAST_API_KEY=<API_KEY>
DAST_API_KEY 为必填。
STDIO 模式不得描述为通过 HTTP Authorization Header 直接向本地进程传递 API Key。
可选 Gateway 覆盖变量:
DAST_MCP_URL=<CUSTOM_GATEWAY_URL>
除非用户明确需要自定义 Gateway,否则不要设置 DAST_MCP_URL。
API Key 格式:
sk_phone_<32位随机字符>
Agent 禁止:
- 向最终用户输出完整 API Key
- 将 API Key 写入公开内容
- 在回答中复述 Authorization Header 中的真实 Key
- 在回答中输出真实
DAST_API_KEY - 将真实
DAST_API_KEY写入公开 GitHub、配置示例、日志或代码块
IF_MCP_NOT_CONFIGURED
如果当前客户端尚未配置航班管家 MCP:
1. 不得声称航班管家 MCP Tool 已经可用。
2. 首先判断当前客户端支持的 MCP 连接模式。
3. 如果客户端支持 Remote Streamable HTTP,默认优先推荐 Remote MCP。
4. 如果客户端仅支持 STDIO,或用户明确要求 npm / npx / STDIO,则使用 STDIO 模式。
5. 不得猜测、生成或暴露用户真实 API Key。
6. 如需 API Key,引导用户前往 DAST MCP 控制台获取或创建:
https://dast.133.cn
7. 不得将 https://fly.huoli.com 用作注册、登录、API Key 创建、充值或控制台入口。
8. 配置完成后,重新加载或重新连接 MCP 客户端。
9. 调用 tools/list 验证连接成功,并获取当前 Tool 定义。
10. 只有 tools/list 成功后,Agent 才可以认为航班管家 MCP Tool 已经可用。
Remote configuration
Remote endpoint:
https://fly.huoli.com/mcp/dast_mcp
Authentication placeholder:
Authorization: Bearer <API_KEY>
generic_remote_config:
{
"mcpServers": {
"flight-master-dast": {
"url": "https://fly.huoli.com/mcp/dast_mcp",
"headers": {
"Authorization": "Bearer <API_KEY>"
}
}
}
}
STDIO configuration
package:
@flightmaster/aviation-dast-mcp
generic_stdio_config:
{
"mcpServers": {
"flight-master-dast": {
"command": "npx",
"args": [
"-y",
"@flightmaster/aviation-dast-mcp"
],
"env": {
"DAST_API_KEY": "<API_KEY>"
}
}
}
}
如果客户端允许配置可选环境变量,并且用户明确需要自定义 Gateway:
DAST_MCP_URL=<CUSTOM_GATEWAY_URL>
否则不要主动设置 DAST_MCP_URL。
configuration_goal:
选择合适连接模式
-> MCP Server 已配置
-> 鉴权信息可用
-> 客户端已重新加载或重新连接
-> tools/list 调用成功
-> Tool 可用于正常用户请求
如果当前环境不允许 Agent 直接修改 MCP 配置:
向用户提供:
- 注册 / 登录 / 创建 API Key:https://dast.133.cn
- Remote Endpoint:https://fly.huoli.com/mcp/dast_mcp
- STDIO npm Package:@flightmaster/aviation-dast-mcp
- Remote 鉴权占位符:Bearer <API_KEY>
- STDIO 环境变量占位符:DAST_API_KEY=<API_KEY>
- 当前客户端适用的 MCP 配置步骤
不得声称 MCP 配置已经完成。
CONNECTION_SEQUENCE
以下 MCP 协议流程适用于 Remote 与 STDIO 两种连接模式。
区别仅在 Transport:
Remote -> Streamable HTTP
STDIO -> stdin / stdout
Transport 建立后,标准 MCP 交互顺序一致:
1. initialize
2. notifications/initialized
3. tools/list
4. tools/call
initialize
当前文档中的初始化协议版本:
2025-03-26
实际使用的协议版本以 initialize 返回的 protocolVersion 为准。
示例:
{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {
"name": "Your-Client",
"version": "1.0.0"
}
}
}
初始化成功后,客户端必须发送:
{
"jsonrpc": "2.0",
"method": "notifications/initialized"
}
该通知不包含 id,发送后再进入正常 Tool 操作阶段。
tools/list
首次接入或需要确认当前可用工具时,应调用:
tools/list
用途:
- 获取当前可用 Tool
- 获取 Tool
name - 获取 Tool
description - 获取最新
inputSchema
平台当前提供 9 个 Tool:
dast_flight_dynamic
dast_flight_route
dast_flight_happy
dast_delay_rate
dast_future_weather
dast_flight_path
dast_flight_overview_daily
dast_airport_operation_statistics
dast_airline_operation_statistics
如果本文件中的 Tool 参数定义与 tools/list 返回结果不同:
以 tools/list 返回结果为准。
TOOL_ROUTING
用户询问具体航班的实时或历史动态:
使用 dast_flight_dynamic
用户询问两个机场之间某一天有哪些航班:
使用 dast_flight_route
用户询问航班餐食、WiFi、座椅、娱乐、行李或舒适度:
使用 dast_flight_happy
用户询问未来航班延误概率或取消概率:
使用 dast_delay_rate
用户询问机场未来天气:
使用 dast_future_weather
用户询问航班当前位置、高度、速度或飞行轨迹:
使用 dast_flight_path
用户询问全国民航单日航班运行汇总、全行业日度运行数据:
使用 dast_flight_overview_daily
用户询问指定机场的航班运行数据、航班波、通航点、航司或机型运力:
使用 dast_airport_operation_statistics
用户询问指定航司的运行数据、机队效率、热门航线或运力趋势:
使用 dast_airline_operation_statistics
TOOL: dast_flight_dynamic
purpose:
按航班号查询指定日期的航班动态数据。
use_when:
- 用户已提供具体航班号
- 查询航班状态
- 查询计划起降时间
- 查询预计起降时间
- 查询实际起降时间
- 查询航站楼等航班动态信息
required_parameters:
fnum
- type: string
- meaning: 航班号
- example: CA1831
date
- type: string
- format: YYYY-MM-DD
- meaning: 航班出发机场当地日期(机场当地自然日),不是北京时间日期或 Agent 所在地日期
- example: 2026-08-10
example_arguments:
{
"fnum": "CA1831",
"date": "2026-08-10"
}
business_data_type:
array
relative_date_rule:
如果用户使用“今天”“明天”“后天”等相对日期,
而 Agent 无法可靠确定该航班的出发机场及其当地日期,
应向用户确认具体日期或出发机场,
不得直接使用北京时间或 Agent 所在地日期。
price:
0.5 CNY / 成功调用
TOOL: dast_flight_route
purpose:
按出发机场、到达机场和日期查询机场对航班动态列表。
use_when:
- 用户不知道具体航班号
- 用户需要查询两个机场之间的航班
- 用户询问某航线某天有哪些航班
required_parameters:
depCode
- type: string
- meaning: 出发机场 IATA 三字码
- example: PEK
arrCode
- type: string
- meaning: 到达机场 IATA 三字码
- example: SHA
date
- type: string
- format: YYYY-MM-DD
- meaning: 出发机场当地日期(机场当地自然日),不是北京时间日期或 Agent 所在地日期
- example: 2026-08-10
example_arguments:
{
"depCode": "PEK",
"arrCode": "SHA",
"date": "2026-08-10"
}
business_data_type:
array
price:
0.5 CNY / 成功调用
TOOL: dast_flight_happy
purpose:
查询航班舒适度相关数据。
available_information_may_include:
- 电源
- 座椅间距
- 餐食
- 娱乐设备
- WiFi
- 行李重量
- 舱等相关信息
required_parameters:
date
- type: string
- format: YYYY-MM-DD
query_mode:
必须满足以下两种条件之一:
OPTION_A:
fnum
- type: string
- meaning: 航班号
- example: 9C8672
OPTION_B:
depCode
- type: string
- meaning: 出发机场 IATA 三字码
- example: PVG
arrCode
- type: string
- meaning: 到达机场 IATA 三字码
- example: SZX
optional_parameters:
cabin
- meaning: 舱等
- example: Y
- behavior: 不传时返回所有可用舱等
example_arguments:
{
"fnum": "9C8672",
"date": "2026-08-15",
"cabin": "Y"
}
business_data_type:
array
price:
0.2 CNY / 成功调用
TOOL: dast_delay_rate
purpose:
查询未来航班延误概率及取消概率。
use_when:
- 用户询问未来航班是否容易延误
- 用户询问延误风险
- 用户询问取消风险
- 用户询问未来航班运行风险
required_parameters:
fnum
- type: string
- meaning: 航班号
depCode
- type: string
- meaning: 出发机场 IATA 三字码
arrCode
- type: string
- meaning: 到达机场 IATA 三字码
date
- type: string
- format: YYYY-MM-DD
supported_date_range:
当日至未来 15 天
example_arguments:
{
"fnum": "CZ3000",
"depCode": "PKX",
"arrCode": "CAN",
"date": "<YYYY-MM-DD>"
}
date 必须位于当日至未来 15 天范围内。
main_output:
- delayRate_30min
- delayRate_60min
- delayRate_90min
- cancelRate
business_data_type:
object
interpretation_rule:
这些字段表示预测概率,不表示确定事件。
推荐表达:
该航班延误 30 分钟以上的预测概率为 12.2%。
不推荐表达:
该航班会延误 30 分钟。
price:
0.5 CNY / 成功调用
TOOL: dast_future_weather
purpose:
查询机场未来天气预报。
use_when:
- 用户询问机场天气
- 用户询问机场未来天气变化
- 用户询问天气是否可能影响航班运行
required_parameters:
airport
- type: string
- meaning: 机场 IATA 三字码
- example: HFE
example_arguments:
{
"airport": "HFE"
}
forecast_range:
未来 48 小时
resolution:
逐小时天气预报
weather_information_may_include:
- 天气现象
- 风力
- 风速
- 风向
- 相对湿度
- 降水
- 气压
- 云量
- 温度
business_data_type:
object
price:
0.1 CNY / 成功调用
TOOL: dast_flight_path
purpose:
查询航班实时或历史飞行轨迹及飞行状态。
use_when:
- 用户询问航班当前飞到哪里
- 用户询问飞行轨迹
- 用户询问当前经纬度
- 用户询问飞行高度
- 用户询问飞行速度
- 用户询问实际飞行路线
required_parameters:
fnum
- type: string
- meaning: 航班号
depCode
- type: string
- meaning: 出发机场 IATA 三字码
arrCode
- type: string
- meaning: 到达机场 IATA 三字码
date
- type: string
- format: YYYY-MM-DD
example_arguments:
{
"fnum": "CZ3000",
"depCode": "PEK",
"arrCode": "CAN",
"date": "2026-08-06"
}
output_may_include:
- aircraftNo
- flightNo
- depAirport
- arrAirport
- curLat
- curLon
- curSpeed
- curHeight
- curAngle
- aircraftType
- aircraftAge
- airlineCompany
- flightState
- depPlanTime
- arrPlanTime
- flight path data
business_data_type:
object
price:
0.1 CNY / 成功调用
TOOL: dast_flight_overview_daily
purpose:
按日期查询全国民航单日运行总览数据,返回 Excel 下载链接。
use_when:
- 用户需要全国层面单日民航运行汇总
- 查询客运航班量、执飞率、同比数据
- 查询可用座公里、飞机利用率
- 查询航司执飞量、千万级机场进出港量
- 查询货运航班量日趋势
required_parameters:
date
- type: string
- format: YYYY-MM-DD
- pattern:
^\d{4}-\d{2}-\d{2}$ - meaning: 统计日期,范围为 2019-01-01 至昨日;日期无可导出数据时调用失败
- example: 2026-08-10
example_arguments:
{
"date": "2026-08-10"
}
business_data_type:
object
return_description:
调用成功后,data.file_url 返回默认 1 小时有效的 Excel 下载链接,实际过期时间以 data.expires_at 为准;data.expires_at 为字符串,格式 Y-m-d H:i:s,使用北京时间(UTC+8)。Excel 包含 8 个 Sheet,各 Sheet 字段明细与数据口径见本文档 ## EXCEL_SHEET_FIELDS。
price:
6 CNY / 成功调用
TOOL: dast_airport_operation_statistics
purpose:
按机场、日期范围、航线类型查询国内机场运行数据统计,返回 Excel 下载链接。
use_when:
- 用户需要指定机场的运行指标
- 查询机场每日航班量、放行正常率、执飞率
- 查询机场半小时航班波分布
- 查询机场通航点、执飞航司、执飞机型排名
required_parameters:
airport
- type: string
- meaning: 机场代码,优先使用 IATA 三字码
- example: PEK
route_type
- type: string
- enum:
dom/area/inter/all - meaning:
dom国内航线,area地区航线,inter国际航线,all全部航线 - example: all
start_time
- type: string
- format: YYYY-MM-DD
- pattern:
^\d{4}-\d{2}-\d{2}$ - meaning: 统计开始日期,范围为 2019-01-01 至昨日
- example: 2026-08-01
end_time
- type: string
- format: YYYY-MM-DD
- pattern:
^\d{4}-\d{2}-\d{2}$ - meaning: 统计结束日期,范围为 2019-01-01 至昨日;不得早于
start_time,与start_time最多相差 90 天 - example: 2026-08-10
example_arguments:
{
"airport": "PEK",
"route_type": "all",
"start_time": "2026-08-01",
"end_time": "2026-08-10"
}
business_data_type:
object
return_description:
调用成功后,data.file_url 返回默认 1 小时有效的 Excel 下载链接,实际过期时间以 data.expires_at 为准;data.expires_at 为字符串,格式 Y-m-d H:i:s,使用北京时间(UTC+8)。Excel 包含 6 个 Sheet,各 Sheet 字段明细与数据口径见本文档 ## EXCEL_SHEET_FIELDS。
price:
6 CNY / 成功调用
TOOL: dast_airline_operation_statistics
purpose:
按航司、日期范围、运输类型查询国内航司运行数据统计,返回 Excel 下载链接。
use_when:
- 用户需要指定航司的运行全貌
- 查询航司执飞航班量、执行率、航线数、座位数
- 查询航司机队规模、飞机利用率
- 查询航司热门航线排名、机型构成
required_parameters:
airline
- type: string
- meaning: 航司二字码
- example: CA
start_time
- type: string
- format: YYYY-MM-DD
- pattern:
^\d{4}-\d{2}-\d{2}$ - meaning: 统计开始日期,范围为 2019-01-01 至昨日
- example: 2026-08-01
end_time
- type: string
- format: YYYY-MM-DD
- pattern:
^\d{4}-\d{2}-\d{2}$ - meaning: 统计结束日期,范围为 2019-01-01 至昨日;不得早于
start_time,与start_time最多相差 90 天 - example: 2026-08-10
optional_parameters:
passenger
- type: integer
- enum:
0/1 - default:
1 - meaning:
0货运,1客运 - example: 1
example_arguments:
{
"airline": "CA",
"start_time": "2026-08-01",
"end_time": "2026-08-10",
"passenger": 1
}
business_data_type:
object
return_description:
调用成功后,data.file_url 返回默认 1 小时有效的 Excel 下载链接,实际过期时间以 data.expires_at 为准;data.expires_at 为字符串,格式 Y-m-d H:i:s,使用北京时间(UTC+8)。Excel 包含 5 个 Sheet;客运与货运文件字段不同,各 Sheet 字段明细与数据口径见本文档 ## EXCEL_SHEET_FIELDS。
price:
12 CNY / 成功调用
DATE_RULES
标准日期格式:
YYYY-MM-DD
对于以下 Tool:
dast_flight_dynamic
dast_flight_route
date 表示航班出发机场当地日期(机场当地自然日),不是北京时间日期,也不是 Agent 所在地日期。
日期解析规则:
查询“当地今天”
-> 使用出发机场当地的当前自然日
查询“当地明天”
-> 使用出发机场当地日期 + 1 day
查询“当地后天”
-> 使用出发机场当地日期 + 2 days
如果用户使用“今天”“明天”“后天”等相对日期,Agent 应结合用户所指航班出发机场的当地日期进行转换,不得直接以北京时间或 Agent 所在地日期替代。
如果用户明确给出具体日期:
直接使用该 YYYY-MM-DD 日期,并按出发机场当地自然日理解。
如果无法安全判断用户所指的机场当地日期:
向用户询问,或根据当前上下文明确解析。
不得猜测不确定的日期。
报表类 Tool
对于:
dast_flight_overview_daily
dast_airport_operation_statistics
dast_airline_operation_statistics
日期参数均为自然日,按北京时间自然日统计。
支持范围与跨度:
dast_flight_overview_daily
-> date 范围为 2019-01-01 至昨日
dast_airport_operation_statistics
dast_airline_operation_statistics
-> start_time、end_time 范围均为 2019-01-01 至昨日
-> end_time 不得早于 start_time
-> end_time 与 start_time 最多相差 90 天
相对日期解析规则:
查询“今天”
-> 报表仅支持到昨日,不能直接调用;应说明限制并请用户改查昨日或更早日期
查询“昨天”
-> 使用北京时间当前自然日 - 1 day
查询“近7天”
-> 结束日期为北京时间昨日,开始日期为结束日期 - 6 days
如果用户使用相对日期表述,Agent 应结合统计场景转换为北京时间对应的具体日期,不得直接使用其他时区日期。
如果无法安全判断报表日期,应向用户询问,不得猜测不确定的日期。
AIRPORT_RULES
机场参数使用 IATA 三字码。
Examples:
PEK = 北京首都国际机场
PKX = 北京大兴国际机场
SHA = 上海虹桥国际机场
PVG = 上海浦东国际机场
HFE = 合肥新桥国际机场
CAN = 广州白云国际机场
如果用户直接提供机场三字码:
直接使用该三字码。
agent_guidance:
如果用户只提供城市名称,且该城市存在多个机场,Agent 不应在缺乏依据时任意指定某一个机场。
可根据用户问题:
- 判断是否需要覆盖多个机场
- 或向用户确认具体机场
Examples:
北京 != 始终等同于 PEK
上海 != 始终等同于 SHA
报表类机场 Tool
dast_airport_operation_statistics 的 airport 参数使用机场代码,优先使用 IATA 三字码。
如果用户只提供机场名称,Agent 应先可靠转换为机场代码;无法确认时向用户询问,不得把机场名称直接作为参数传入。
城市名称不等同于具体机场名称。对于多机场城市,如果用户未明确机场,应先确认具体机场,不得任意指定。
AIRLINE_RULES
dast_airline_operation_statistics 的 airline 参数使用航司二字码。
Examples:
CA = 中国国际航空
MU = 中国东方航空
CZ = 中国南方航空
HU = 海南航空
如果用户直接提供航司二字码:
直接使用该二字码。
如果用户提供航司全称,Agent 应可靠转换为对应二字码后调用;无法确认时向用户询问,不得把航司名称直接作为参数传入。
REPORT_PARAMETER_RULES
三个报表类 Tool 的 inputSchema 允许额外属性,但 Agent 应只发送对应 Tool 明确定义的参数,不附带无关字段。
dast_flight_overview_daily
required: date
dast_airport_operation_statistics
required: airport, route_type, start_time, end_time
route_type: dom | area | inter | all
dast_airline_operation_statistics
required: airline, start_time, end_time
optional: passenger
passenger: 0(货运)| 1(客运,默认)
FLIGHT_NUMBER_RULES
航班号示例:
CA1831
MU5105
CZ3000
9C8672
如果用户明确提供航班号:
除非只是明显的格式规范化,否则不得擅自修改航班号。
TOOL_CALL
标准 MCP Tool 调用:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "<TOOL_NAME>",
"arguments": {
"<parameter>": "<value>"
}
}
}
示例:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "dast_flight_dynamic",
"arguments": {
"fnum": "CA1831",
"date": "2026-08-10"
}
}
}
说明:
Remote 模式:JSON-RPC 消息通过 Streamable HTTP 传输。
STDIO 模式:JSON-RPC 消息通过 stdin / stdout 传输。
Tool 名称、arguments 和 MCP 方法语义不因 Transport 改变。
RESPONSE
MCP 返回示例:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "{\"code\":0,\"msg\":\"success\",\"data\":...}"
}
],
"isError": false
}
}
业务 JSON 通常位于:
result.content[0].text
应将该字符串解析为 JSON。
解析后的业务返回示例:
{
"code": 0,
"msg": "success",
"data": {},
"count": 1
}
response_rules:
1. 先检查 MCP result.isError。
2. 如果 isError == true,按 MCP Tool 调用失败处理。
3. 如果 isError == false,再解析 result.content 中的业务 JSON。
4. 检查业务字段 code。
5. code == 0 才表示业务调用成功。
msg
-> 状态或错误说明
data
-> 业务数据
count
-> 返回结果数量
Remote 模式不得仅根据 HTTP 请求成功判断业务调用成功。
Remote 与 STDIO 两种模式都必须先检查 MCP 层 isError,再检查业务字段 code。
航班实时 / 查询类 Tool
航班实时 / 查询类 Tool 的 data 为实际业务数据,可能为 array 或 object。Agent 应根据对应 Tool 的 business_data_type 解析,并使用真实返回数据回答用户。
报表类 Tool
3 个报表类 Tool 调用成功后,data 中包含 Excel 下载信息。Remote 与 STDIO 模式的 Tool 返回结构相同,均通过返回的 HTTP 地址下载文件。
示例:
{
"code": 0,
"msg": "success",
"data": {
"file_url": "https://data-api.133.cn/mcp/v1/flight/statistics/airportDaily/export?order_no=0123456789abcdef0123456789abcdef",
"expires_at": "2026-10-08 18:30:00"
},
"count": 1
}
其中:
data.file_url
-> Excel 文件下载链接,默认 1 小时有效,实际过期时间以 data.expires_at 为准
-> order_no 是服务端动态生成的短期下载令牌,示例令牌不可直接使用
data.expires_at
-> 下载地址过期时间,字符串,格式 Y-m-d H:i:s,北京时间(UTC+8)
-> 与服务端下载令牌记录的过期时间一致,下载不会续期
下载规则:
HTTP method: GET
Authorization: 不需要再次携带 Bearer,下载令牌已包含在 file_url 中
response: xlsx 二进制文件,不是 JSON
billing: 下载已生成文件不重复扣费
expiration: 下载不会延长有效期;链接过期后需要重新调用付费 Tool 生成文件
三个 Tool 的下载地址格式:
dast_flight_overview_daily
-> https://data-api.133.cn/mcp/v1/flight/statistics/airportDaily/export?order_no=<TOKEN>
dast_airport_operation_statistics
-> https://data-api.133.cn/mcp/v1/airport/statistics/export?order_no=<TOKEN>
dast_airline_operation_statistics
-> https://data-api.133.cn/mcp/v1/airline/statistics/export?order_no=<TOKEN>
下载文件名示例:
全国民航每日总览_20260810.xlsx
国内机场运行数据统计_PEK_20260801_20260810_全部航线.xlsx
国内航司运行数据统计_CA_20260801_20260810.xlsx
国内航司运行数据统计_CA_20260801_20260810_货运航班.xlsx
Agent 获取报表类返回后,应在有效期内下载并解析 Excel,根据用户需求读取对应 Sheet;字段、单位与统计口径见 ## EXCEL_SHEET_FIELDS。不得向不相关第三方泄露包含下载令牌的 file_url。
BUSINESS_DATA_TYPES
dast_flight_dynamic -> array
dast_flight_route -> array
dast_flight_happy -> array
dast_delay_rate -> object
dast_future_weather -> object
dast_flight_path -> object
dast_flight_overview_daily -> object
dast_airport_operation_statistics -> object
dast_airline_operation_statistics -> object
BILLING
billing_model:
账户余额预付费
billing_rule:
Tool 调用成功
-> 扣减账户余额
Tool 调用失败
-> 不扣费
账户余额不足
-> Tool 调用失败
报表类 Tool 返回 file_url 后下载文件
-> 不重复扣费
file_url 过期后重新调用报表类 Tool 生成文件
-> 视为一次新的付费调用
各 Tool 单价见对应 Tool 的 price。
Agent 应:
- 避免无必要的重复调用
- 当前任务中已经获取的数据,在适用时应优先复用
- 报表类 Tool 的 Excel 下载后可缓存解析结果,在当前任务中无需重复调用
ERRORS
PHONE_KEY_MISSING
code: 48001
meaning: MCP 服务端未收到有效 API Key
action:
- Remote 模式:检查 Authorization: Bearer <API_KEY> 是否正确配置
- STDIO 模式:如果进程已经启动但仍返回该错误,检查 DAST_API_KEY 是否正确传入
STDIO_LOCAL_API_KEY_MISSING
condition: DAST_API_KEY 未设置
meaning: STDIO MCP 进程启动失败
action: 设置 DAST_API_KEY 后重新启动 STDIO MCP 进程
PHONE_KEY_INVALID
code: 48002
meaning: API Key 无效或不存在
action: 检查或重新获取 API Key
PHONE_KEY_RATE_LIMITED
code: 48006
meaning: QPS 超限
action: 降低调用频率后重试
PARAM_INVALID
meaning: 请求参数无效
action: 检查 Tool inputSchema 与 arguments
MCP账户余额不足
meaning: 账户余额不足
action: 提示用户前往 DAST 平台充值
date 仅支持当日至未来15天
meaning: dast_delay_rate 查询日期超出支持范围
action: 使用支持范围内的日期
日期范围不合法
meaning: 报表类 Tool 日期格式错误、超出 2019-01-01 至昨日,或日期区间超过 90 天
action: 修正为 YYYY-MM-DD;范围类 Tool 还需保证 end_time 不早于 start_time 且跨度不超过 90 天
查询日期暂无可导出数据 / 查询范围暂无可导出数据
meaning: 参数有效,但指定日期或日期范围内没有满足条件的数据
action: 明确告知用户无可导出数据;不要把调用描述为成功
文件生成失败,请稍后重试
meaning: Excel 文件生成或校验失败
action: 稍后重试;避免立即连续重复调用付费 Tool
下载地址不存在或已过期 / 下载文件不存在或已过期
meaning: file_url 中的下载令牌无效、已过期,或对应文件已清理
action: 不要反复请求旧链接;征得用户同意后重新调用报表类 Tool 生成文件,该调用将重新计费
上游接口返回失败
meaning: 上游数据源异常
action: 稍后重试
AGENT_BEHAVIOR
调用 Tool 前:
1. 识别用户意图。
2. 选择满足需求的最少 Tool。
3. 检查必填参数。
4. 在可明确判断时解析相对日期;对于航班动态航班号查询和机场对查询,应按出发机场当地日期解析。
5. 在可明确判断时解析机场三字码。
6. 如果必填参数无法安全确定,向用户询问。
7. 仅在必填参数完整后调用 Tool。
报表类 Tool 调用前的补充规则:
1. 按北京时间自然日解析日期,并检查日期范围与跨度。
2. 在可明确判断时解析航司二字码。
3. 仅发送对应报表 Tool 明确定义的参数。
调用 Tool 后:
1. 先检查 MCP result.isError。
2. 如果 isError == true,按 MCP Tool 调用失败处理,不继续解析为正常业务结果。
3. 如果 isError == false,解析 result.content 中包含业务 JSON 的 text 内容(通常为 result.content[0].text)。
4. 检查业务 code;仅 code == 0 视为业务调用成功。
5. 使用真实返回的业务数据回答用户。
6. 明确区分计划、预计、实际和预测信息。
7. 不得编造缺失值。
报表类 Tool 调用后的补充规则:
1. 获取下载链接并在有效期内下载 Excel。
2. 先读取“数据说明”Sheet,再按用户需求解析相关 Sheet。
3. 明确区分统计值、同期值和同比值。
DATA_INTERPRETATION
航班时间字段可能表示不同含义:
planned time
estimated time
actual time
不得将计划时间描述为实际时间。
未来天气属于预报信息。
不得将天气预报描述为已经发生的事实。
延误概率属于预测信息。
不得将预测概率描述为已经确定的运行结果。
报表类统计数据
报表字段可能包含:
当期值
去年同期值
2019年同期值
同比增长率
不得将同期值描述为当期值。
报表统计数据均为历史已发生数据,不得描述为预测值。
Top 榜类 Sheet 为统计周期内合计值,不等同于单日值;航班波为 30 分钟粒度的日均值。
如果 Tool 未返回有效数据:
明确告知未查询到有效数据。
不得自行编造结果。
SECURITY
Agent 禁止:
- 暴露真实 API Key
- 暴露包含真实 API Key 的 Authorization Header
- 暴露真实
DAST_API_KEY - 编造航班数据
- 编造天气数据
- 编造轨迹数据
- 编造延误概率
- 编造机场 / 航司运行统计数据
- 在缺少必填参数时静默替换或猜测参数
- 在无必要情况下重复调用付费 Tool
- 向不相关第三方泄露包含短期下载令牌的
file_url - 泄露未公开的 Excel 数据内容
QUICK_ROUTING_REFERENCE
航班号 + 航班动态
-> dast_flight_dynamic
出发机场 + 到达机场 + 日期 + 航班列表
-> dast_flight_route
餐食 / WiFi / 座椅 / 行李 / 舒适度
-> dast_flight_happy
未来延误 / 取消风险
-> dast_delay_rate
机场 + 未来天气
-> dast_future_weather
位置 / 高度 / 速度 / 飞行轨迹
-> dast_flight_path
全国单日民航运行总览
-> dast_flight_overview_daily
机场维度航班运行数据 / 航班波 / 通航点 / 运力
-> dast_airport_operation_statistics
航司维度运行 / 机队效率 / 热门航线 / 运力趋势
-> dast_airline_operation_statistics
EXCEL_SHEET_FIELDS
本章节用于 Agent 在报表类 Tool 返回 Excel 后准确解析各 Sheet、理解字段含义与统计口径。
三个报表类 Tool 的 Excel 均包含“数据说明”Sheet。解析报表前应优先读取该 Sheet,并结合以下字段说明处理。
dast_flight_overview_daily
返回文件基本信息:
| 项目 | 说明 |
|---|---|
| 返回格式 | xlsx |
| Sheet数量 | 8个 |
| 下载链接有效期 | 1小时 |
各Sheet字段明细:
| Sheet名称 | 核心字段 | 单位/说明 |
|---|---|---|
| 全国(含国际/地区)客运日航班量 | 日期、全国航线执行航班量、执飞率、去年同期执行航班量、2019年同期执行航班量、国内/国际/地区航线对应指标 | 航班量为架次,执飞率为百分比 |
| 国内航司可用座公里日趋势 | 日期、可用座公里、去年同期可用座公里 | 座公里 |
| 中国民航飞机日利用率趋势 | 日期、全机队、宽体机、窄体机、支线客机 | 小时/天 |
| 航班量Top10航司飞机利用率 | 航司名称、航司代码、全机队/宽体/窄体/支线飞机利用率 | 小时/天 |
| 国内航司客运航班量 | 航司名称、航司代码、执飞航班量、取消航班量、执飞率 | 航班量为架次,执飞率为百分比 |
| 国内千万级机场客运航班量 | 机场名称、机场代码、执飞进出港航班量、取消进出港航班量、同比去年增长率、取消率 | 航班量为架次,增长率/取消率为百分比 |
| 国内货运日航班量 | 日期、执飞航班量、去年同期执飞航班量 | 架次 |
| 数据说明 | 数据口径备注 | - |
数据口径备注:
数据来源:航班管家
统计范围:国内、国际、港澳台航司,国内、国际、地区航线
客运航班:仅定期客运航班,不含包机、公务机、调飞等
货运航班:仅货运航班,不含客改货等
统计时间:按航班实际出港时间计算
飞行时间:仅计算空中飞行时间,不含地面滑行时间
dast_airport_operation_statistics
返回文件基本信息:
| 项目 | 说明 |
|---|---|
| 返回格式 | xlsx |
| Sheet数量 | 6个 |
| 下载链接有效期 | 1小时 |
各Sheet字段明细:
| Sheet名称 | 核心字段 | 单位/说明 |
|---|---|---|
| 每日航班量 | 日期、计划进港航班量、实际进港航班量、计划出港航班量、实际出港航班量、放行正常率、执飞率 | 航班量为架次,率值为百分比 |
| 航班波 | 时刻(30分钟粒度)、计划进港航班量、实际进港航班量、计划出港航班量、实际出港航班量 | 日均值,可为小数 |
| 通航点往返执行航班量Top10 | 机场名称、机场代码、执行航班量 | 架次 |
| 航司出港执行航班量 | 航司名称、航司代码、执行航班量、运力投入占比 | 占比为百分比 |
| 各机型出港执行航班量 | 机型、执行航班量 | 架次 |
| 数据说明 | 数据口径备注 | - |
数据口径备注:
数据来源:航班管家
统计范围:国内、国际、港澳台航司,国内、国际、地区航线
客运航班:仅定期客运航班,不含货运航班、包机等
统计属性:不含经停航班、共享航班、虚拟航班
统计时间:按航班实际出港时间计算
放行正常率滑行时间标准:4000万吞吐量以上机场30分钟,2000万以上25分钟,1000万以上20分钟,其他机场15分钟
dast_airline_operation_statistics
返回文件基本信息:
| 项目 | 说明 |
|---|---|
| 返回格式 | xlsx |
| Sheet数量 | 5个 |
| 下载链接有效期 | 1小时 |
passenger=1 或不传 passenger 时,返回客运统计文件;passenger=0 时,返回货运统计文件。两类文件均包含 5 个 Sheet,但前两个 Sheet 的指标不同。
客运文件各 Sheet 字段明细(passenger=1,默认):
| Sheet名称 | 核心字段 | 单位/说明 |
|---|---|---|
| 总体数据统计(单行汇总) | 执飞航班总量、航线总数、可利用座位总数、机队总数、平均飞机利用率、执行率、宽体/窄体/支线机数量与执飞航班量 | 率值为百分比,其余为绝对值 |
| 每日统计 | 日期、执行航班量、可利用座位数、机队总体利用率、宽体/窄体/支线机利用率 | 利用率单位:小时/天 |
| 国内航线往返航班量Top20 | 机场1名称、机场1代码、机场2名称、机场2代码、执行航班量 | 架次 |
| 国际及地区航线往返航班量Top20 | 机场1名称/代码/国家、机场2名称/代码/国家、执行航班量 | 架次 |
| 数据说明 | 数据口径备注 | - |
货运文件各 Sheet 字段明细(passenger=0):
| Sheet名称 | 核心字段 | 单位/说明 |
|---|---|---|
| 总体数据统计(单行汇总) | 执飞航班总量、航线总数、理论业载总量、机队总数、平均飞机利用率、执行率、宽体/窄体/支线机数量与执飞航班量 | 率值为百分比,其余为绝对值 |
| 每日统计 | 日期、执行航班量、理论业载总量 | 航班量为架次,业载按文件实际单位解释 |
| 国内航线往返航班量Top20 | 机场1名称、机场1代码、机场2名称、机场2代码、执行航班量 | 架次 |
| 国际及地区航线往返航班量Top20 | 机场1名称/代码/国家、机场2名称/代码/国家、执行航班量 | 架次 |
| 数据说明 | 数据口径备注 | - |
数据口径备注:
数据来源:航班管家
统计范围:仅境内、港澳台航司,国内、国际(含纯国际)、地区航线
客运文件:仅定期客运航班,不含货运航班、包机等
货运文件:按实际下载文件“数据说明”Sheet中的货运口径解释
统计属性:不含经停航班、共享航班、虚拟航班
统计时间:按航班实际出港时间计算
延误标准:实际起飞时间比计划晚30分钟以上记为延误
Excel解析注意
1. 三个Tool的Excel均包含“数据说明”Sheet,解析前应先读取该Sheet确认口径。
2. 机场类与航司类Excel的“每日统计/每日航班量”Sheet按日期逐行展开,航班波为30分钟粒度的日均值。
3. Top榜类Sheet(Top10通航点、Top20航线等)为统计周期内合计值,不等于单日值。
4. 明确区分当期值、去年同期值、2019年同期值、同比增长率,不得混用。
5. Sheet名称与字段以实际下载文件为准,若与本文件描述不一致,以Excel内“数据说明”Sheet为准。
SOURCE_OF_TRUTH
Tool 定义和入参的优先级:
1. MCP Server tools/list
2. 本 Agent 文档
业务数据的优先级:
1. MCP Tool 实际返回结果
2. 报表类 Tool 实际下载的 Excel 内容及其中“数据说明”Sheet(如适用)
3. 本 Agent 文档
连接与发布信息的优先级:
1. Official MCP Registry
2. Official GitHub README / npm package metadata
3. 本 Agent 文档
如果信息存在冲突:
以更高优先级的数据源为准。