关于 Flights MCP Server
Flights MCP Server 通过 Aviasales Flight Search API 搜索航班,支持细致筛选与排序、查看航班信息及生成预订链接,并可选择远程或自托管部署。
主要功能
- 01搜索单程、往返和多城市航班
- 02按价格、时长、航空公司、时间和经停筛选
- 03按价格、时间或时长排序航班
- 04查看航班详情、行李额度和航空公司信息
- 05生成预订链接
- 06在本地保存过往搜索
适用场景
- 01搜索不同行程类型的航班
- 02按预算、时间安排或航空公司缩小选项
- 03选择航班前查看行李详情
- 04为选定航班生成预订链接
MCP 相关
通过 MCP 工具提供航班搜索、选项获取与筛选、航班详情查询和预订链接生成。支持 stdio、HTTP 和 SSE 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
✈️ Flights MCP 服务
基于 Aviasales Flight Search API 提供航班搜索功能的模型上下文协议(MCP)服务。此服务支持搜索航班、筛选结果、获取详细航班信息以及生成预订链接。
https://github.com/user-attachments/assets/87d79d54-c4ab-4938-9792-18572315f1ba
使用方法
你可以使用远程 MCP 服务,也可以部署自己的实例:
-
远程 MCP
可使用以下公共实例:
https://findflights.me/sse
此服务使用 SSE 传输协议,无需设置即可使用。⚠️ 重要提示: 目前并非所有大模型客户端都支持远程 MCP 连接。例如,Claude.ai 仅在 Pro+ 套餐中支持远程 MCP 集成。
-
自托管部署
如果你希望运行自己的服务,请按照安装部分中的说明操作。注意:要部署自己的服务,你必须获取 Aviasales API Key 和 Marker ID。
功能
- 航班搜索:搜索单程、往返和多城市航班
- 高级筛选:按价格、时长、航空公司、出发/到达时间和中转次数筛选结果
- 多种排序选项:按价格、出发时间、到达时间或时长排序
- 详细航班信息:获取全面的航班详情,包括行李额度和航空公司信息
- 预订链接:为选定的航班生成预订链接
- 本地存储:已执行的搜索会存储在本地,因此大模型无需等待即可访问以往的搜索记录
- 多种 MCP 传输选项:支持 stdio、HTTP 和 SSE 传输
安装
前提条件
- Aviasales API key
- Python 3.12 或更高版本
- UV 包管理器
设置
- 克隆代码库:
git clone <repository-url>
cd flights-mcp
-
设置环境变量(请参阅环境变量部分)
-
运行服务
uv run src/flights-mcp/main.py
服务会绑定到 0.0.0.0,因此可通过主机上的所有网络接口访问。
环境变量
需要设置以下环境变量:
-
FLIGHTS_AVIASALES_API_TOKEN(必需):你的 Aviasales API token -
FLIGHTS_AVIASALES_MARKER(必需):你的 Aviasales marker ID -
FLIGHTS_TRANSPORT(可选):要使用的传输协议- 选项:
stdio(默认)、streamable_http、sse
- 选项:
-
FLIGHTS_HTTP_PORT(可选):HTTP/SSE 传输所用的端口- 仅当
FLIGHTS_TRANSPORT为streamable_http或sse时使用 - 默认值:
4200
- 仅当
-
FLIGHTS_HTTP_PATH(可选):端点的 URI 路径- 仅当
FLIGHTS_TRANSPORT为streamable_http或sse时使用 - 默认值:
/mcp
- 仅当
MCP 工具
该服务提供以下 MCP 工具:
| 工具 | 描述 |
|---|---|
search_flights | 使用 Aviasales Flight Search API 搜索航班。返回包含 search_id 和已找到选项摘要的搜索说明。 |
get_flight_options | 获取、筛选并排序之前搜索得到的航班选项。返回经过筛选的分页航班选项列表。 |
get_flight_option_details | 返回详细的航班信息,包括航段、价格、行李额度和代理商条款。 |
request_booking_link | 为指定的航班选项生成预订链接。 |
典型使用模式
- 搜索航班,使用
search_flights()——灵活调整日期时可多次调用 - 筛选和浏览选项,使用
get_flight_options()——这是一个轻量级工具,可使用不同的筛选条件和排序选项多次调用 - 获取详细信息,使用
get_flight_option_details()——针对用户首选的选项 - 生成预订链接,使用
request_booking_link()——仅在用户确认预订意向后调用
支持
如遇到以下问题:
- MCP 服务:在此代码仓库中提交 Issue
- MCP 协议:请参阅模型上下文协议文档
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。