mcpField
F
flightaware-mcp

flightaware-mcp

本地服务
github.com/chrischall地图与出行11 天前更新

关于 flightaware-mcp

flightaware-mcp 将 Claude 等 MCP 客户端连接到 FlightAware AeroAPI v4,获取实时航班和航空数据。它提供航班与机场查询、时刻表和提醒管理,并在更改提醒前要求确认。

主要功能

  1. 01航班搜索和实时位置
  2. 02航班轨迹、航线、历史记录与地图
  3. 03机场信息、航班看板、延误和天气
  4. 04运营方、航空器和时刻表查询
  5. 05创建和管理航班提醒
  6. 06更改提醒前进行确认

适用场景

  1. 01查看航班当前位置和航线
  2. 02查询机场到达或出发航班
  3. 03了解机场延误和天气
  4. 04经确认后设置或更新航班提醒

MCP 相关

通过 stdio 向 MCP 客户端提供 FlightAware AeroAPI v4 的航班和航空数据工具。更改提醒前必须确认。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"chrischall-flightaware": {
"command": "npx",
"args": [
"-y",
"@chrischall/flightaware-mcp"
],
"env": {
"AEROAPI_API_KEY": "<AEROAPI_API_KEY>",
"AEROAPI_OUTPUT_DIR": "<AEROAPI_OUTPUT_DIR>",
"AEROAPI_CACHE_TTL": "<AEROAPI_CACHE_TTL>",
"AEROAPI_STATIC_CACHE_TTL": "<AEROAPI_STATIC_CACHE_TTL>"
}
}
}
}
启动命令npx -y @chrischall/flightaware-mcp
需要配置的环境变量
AEROAPI_API_KEY密钥Your FlightAware AeroAPI key (flightaware.com/aeroapi/portal)
AEROAPI_OUTPUT_DIRDefault directory for flight-map PNGs (default: current working directory)
AEROAPI_CACHE_TTLSeconds to cache identical live-data GET responses (default 15; 0 disables)
AEROAPI_STATIC_CACHE_TTLSeconds to cache reference data — airports, operators, routes, ownership (default 3600; 0 disables)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@chrischall/flightaware-mcp1.3.2

工具

34

收录的工具列表 · 更新于 2 周前

参数类型必填说明
endstring否时间窗口的 ISO-8601 结束时间
viewenum否响应格式:"compact"(默认)会省略响应中其他位置已包含的字段;"full" 会返回此服务端了解的所有字段。compact 会从响应中移除图像/avatar URL;"full" 会原样返回 FlightAware 的负载。不支持字段投影:此服务端没有经过验证的记录来确定哪些 FlightAware 字段重要,擅自指定可能导致调用方需要的字段被丢弃。compact | full
identstring是航班标识符、注册号或 fa_flight_id
startstring否时间窗口的 ISO-8601 开始时间
cursorstring否分页游标:之前响应的 links.next 中的 cursor 查询参数(也可以直接传入整个 links.next 值)
max_pagesinteger否要获取的最大页数,范围为 1-20(AeroAPI 默认值:1)。上限为 20,因为 AeroAPI 按页计费。
ident_typeenum否消除 `ident` 解释方式的歧义designator | registration | fa_flight_id

详细介绍

flightaware-mcp

npm

适用于 FlightAware AeroAPI(v4)的 MCP 服务 — 为 Claude 提供实时航班追踪和航空数据。追踪航班、查看机场航班信息、查询运营商和航空器、获取计划航班并管理航班提醒,所有操作均通过 stdio 完成。

由 AI(Claude Code)开发和维护。请自行斟酌使用。

快速开始

{
  "mcpServers": {
    "flightaware": {
      "command": "npx",
      "args": ["-y", "@chrischall/flightaware-mcp"],
      "env": { "AEROAPI_API_KEY": "your-aeroapi-key-here" }
    }
  }
}

在 flightaware.com/aeroapi/portal 获取密钥。免费的 Personal 层级(每月 500 次调用)足以入门;AeroAPI 按查询次数计费。

工具

区域工具
航班fa_get_flights、fa_search_flights、fa_search_flights_advanced、fa_search_flight_positions、fa_count_flights、fa_get_flight_track、fa_get_flight_position、fa_get_flight_route、fa_get_flight_map、fa_get_flight_history、fa_resolve_flight
机场fa_get_airport、fa_get_airport_flights、fa_get_airport_flight_counts、fa_get_airport_routes、fa_list_airports、fa_get_nearby_airports、fa_get_airport_delays、fa_get_airport_weather、fa_resolve_airport
运营商 / 航空器fa_get_operator、fa_get_operator_flights、fa_list_operators、fa_get_aircraft_owner
时刻表 / 预测fa_get_scheduled_flights、fa_foresight_search(高级层级)
提醒fa_list_alerts、fa_get_alert、fa_create_alert、fa_update_alert、fa_delete_alert、fa_get_alerts_endpoint、fa_set_alerts_endpoint
健康检查fa_healthcheck — 该连接器是否正常工作?报告 AEROAPI_API_KEY 是否已解析、AeroAPI 是否接受该密钥,以及需要如何修复。检查结果会静态缓存,因此重复检查不会重复计费。

提醒变更操作(fa_create_alert、fa_update_alert、fa_delete_alert、fa_set_alerts_endpoint)会在写入前要求你确认 — 参见确认。

确认

每项提醒变更操作都会在修改你的 AeroAPI 账户前请求确认。能够显示确认提示的客户端(Claude Code)会显示提示。无法显示确认提示的客户端(claude.ai、Claude Desktop)则不会在首次调用时发出任何网络请求,而是返回确切请求的预览(方法、路径、正文)以及一个 confirmToken;只有再次调用并附上该令牌时才会发送请求。令牌只能使用一次,会过期;如果预览后请求发生变化,令牌也会被拒绝。

变量默认值
MCP_CONFIRM_MODEask-user无法显示确认提示的客户端(claude.ai、Claude Desktop)如何处理写入操作。ask-user:分两步执行 — 首次调用不执行任何操作,而是返回预览和令牌;模型必须先在聊天中获得你的批准,然后才能再次调用并附上令牌。auto:同样分两步执行,但模型查看预览后可以自行使用令牌。refuse:此类客户端上的写入操作会被拒绝。能够显示提示的客户端(Claude Code)始终会收到真实提示,除非 MCP_CONFIRM_ELICITATION=off。无法识别的值会按 refuse 处理。
MCP_CONFIRM_ELICITATIONonoff 表示绝不发送确认提示,因此所有客户端都会采用 MCP_CONFIRM_MODE 指定的处理方式。若客户端声明能够显示提示但实际上从不显示(受门控的调用会一直挂起 — opencode 2.0.x),请设置此项。其他任何值都将保持为 on,并输出 stderr 警告。
MCP_CONFIRM_TTL_SECONDS600令牌的有效时长。
MCP_CONFIRM_SECRET每个进程随机生成签名密钥;只有在令牌需要在服务重启后继续有效时才设置。

配置

变量必填用途
AEROAPI_API_KEY是你的 AeroAPI 密钥(作为 x-apikey 标头发送)。
AEROAPI_OUTPUT_DIR否航班地图 PNG 的默认目录(默认值:~/Downloads/flightaware-mcp)。每次调用的 output_dir 必须位于此目录内(如果未设置,则必须位于 ~/Downloads/flightaware-mcp 内)。
AEROAPI_CACHE_TTL否缓存相同 实时数据 GET 响应的秒数(默认值:15;设为 0 可禁用)。可减少 AeroAPI 按查询计费的费用。
AEROAPI_STATIC_CACHE_TTL否参考数据的较长缓存 TTL——机场/运营商信息、航线、所有权、规范化查询(默认值:3600;设为 0 可禁用)。

开发

npm install
npm run build
npm test

每个请求都会使用你自己的 AeroAPI 密钥,并计入你的订阅配额。固定的端点范围请参阅 docs/FLIGHTAWARE-API.md。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。