关于 Flights Mcp Server
这是一个 MCP 服务,用于让 Agent 或 LLM 查询 Google Flights 的航班数据。它面向希望通过自然语言查询航班的用户,目前仅支持单程查询,往返会拆分为两个单程查询。
主要功能
- 01查询指定航线的航班详情
- 02按价格排序返回最便宜的航班
- 03返回 Google Flights 标记的推荐航班
- 04按出发时间前后筛选航班
适用场景
- 01查询某日两地之间的航班选项
- 02寻找指定时间段内出发的航班
- 03比较不同机场或日期的票价
MCP 相关
该项目是 MCP 服务,通过 get_general_flights_info、get_cheapest_flights 等工具向 MCP 客户端提供 Google Flights 航班数据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Google Flights MCP 服务
一个模型上下文协议(MCP)服务实现,可将你的 Agent 或大模型连接到 Google Flights 数据。获取航班信息、查找最便宜的选项、按时间限制筛选,并获取 Google Flights 的最佳推荐!
🌍 概述
此 MCP 服务可无缝访问 Google Flights 数据,让你的 AI Agent 能够:
- 获取全面的航班信息
- 查找最便宜的可用航班
- 根据特定时间限制筛选航班
- 获取 Google Flights 推荐的最佳航班
注意: 目前,此工具仅支持单程航班(如果你询问往返行程,它会按两个单程航班处理!),因为这是我为学习 MCP 而做的一个有趣的小项目。
如果有人觉得这有用,或者希望我添加相关功能,我可以着手加入往返和多城市功能!!欢迎提交 PR,或联系我!
🎥 使用与演示
只需按照快速入门指南,为 Claude Desktop、Cursor 或其他 MCP 客户端完成设置,然后尽管提问,即可查询你想了解的航班信息!!
[插入 Claude Desktop 演示视频]
🛠️ 工具
可用函数/工具
-
get_general_flights_info():获取指定航线的全面航班信息- 提供最多 40 个航班的详细信息
- 返回易于阅读的航班描述列表
-
get_cheapest_flights():查找价格最实惠的航班选项- 按价格从低到高排序并返回航班
- 包含当前航线的整体价格信息
-
get_best_flights():获取 Google Flights 推荐的顶级航班- 识别并返回 Google Flights 标记为“最佳”的航班
- 帮助用户找到最合适的航班选择
-
get_time_filtered_flights():按特定时间限制筛选航班- 搜索早于或晚于目标时间的航班
- 支持精准的行程时间偏好
输入参数
必需参数
-
origin: str- 出发机场的 IATA 代码(例如:“ATL”、“SCL”、“JFK”) -
destination: str- 目的地机场的 IATA 代码(例如:“DTW”、“ICN”、“LIR”) -
departure_date: str- 出发日期,格式为 YYYY-MM-DD
可选参数
-
trip_type: str- 行程类型,可选 "one-way" 或 "round-trip"(默认值:"one-way") -
seat: str- 座位类型,可选 "economy"、"premium-economy"、"business" 或 "first"(默认值:"economy") -
adults: int- 成人乘客人数(默认值:1) -
children: int- 儿童乘客人数(默认值:0) -
infants_in_seat: int- 需要座位的婴儿人数(默认值:0) -
infants_on_lap: int- 由成人抱在腿上乘行的婴儿人数(默认值:0)
特定函数的附加参数
-
n_flights: int- 要返回的航班数量(默认值:40,仅适用于get_general_flights_info()) -
state: str- 时间筛选状态,可选 "before" 或 "after"(仅适用于get_time_filtered_flights()) -
target_time_str: str- 目标时间,格式为 HH:MM AM/PM(仅适用于get_time_filtered_flights())
⚡ 快速入门
Claude Desktop
-
确保已下载最新版本的 Claude for Desktop!
-
克隆此仓库
-
安装
uv以设置 Python 环境MacOS
# Check if uv is already installed uv --version # If not installed curl -LsSf https://astral.sh/uv/install.sh | shWindows
# Check if uv is already installed uv --version # If not installed powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"⚠️ 重要:安装完成后,必须重启终端,才能识别
uv命令! -
将此航班 MCP 服务添加到 Claude for Desktop 配置中:
MacOS
- 在终端中导航到配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json - 或者,如果你安装了 VSCode 并配置了 Code 别名,可以直接创建或编辑:
code ~/Library/Application\ Support/Claude/claude_desktop_config.jsonWindows
- 在 PowerShell 中导航到配置文件位置:
%AppData%\Claude\claude_desktop_config.json - 或者,如果你安装了 VSCode 并配置了 Code 别名,可以直接创建或编辑:
code $env:AppData\Claude\claude_desktop_config.json注意:
~/Library/Application Support/Claude/config.json是另一个无关的文件。请勿编辑。 - 在终端中导航到配置文件位置:
-
在
mcpServers键中添加此航班 MCP 服务:{ "mcpServers": { "flights": { "command": "/ABSOLUTE/PATH/.local/bin/uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/PARENT/FOLDER", "run", "flights.py" ] } } }请修改代码,在
command参数中填入uv的绝对路径,并在args参数中填入此仓库的绝对路径。你可能需要在 command 字段中填写
uv可执行文件的完整路径。运行以下命令即可获取:- 在 MacOS/Linux 上运行
which uv - 在 Windows 上运行
where uv
示例:
{ "mcpServers": { "flights": { "command": "/Users/sahitmamidipaka/.local/bin/uv", "args": [ "--directory", "/Users/sahitmamidipaka/Documents/Google-Flights-MCP-Server", "run", "flights.py" ] } } } - 在 MacOS/Linux 上运行
-
大功告成!打开 Claude for Desktop,你应该会看到 MCP 工具图标出现(请确保重新打开应用以应用更新——每次更改
claude_desktop_config.json文件后都需要这样做 😊)
更多信息请参阅 MCP 官方文档。
Cursor
-
打开 Cursor 并进入设置
-
点击左侧面板中的 MCP 选项卡
-
添加一个新的 MCP 服务(任选一种):
项目配置
- 在项目目录中创建
.cursor/mcp.json文件 - 适用于仅针对单个项目的工具
全局配置
- 在主目录中创建
~/.cursor/mcp.json文件 - 让所有 Cursor 工作区都能使用 MCP 服务
- 在项目目录中创建
-
在
mcp.json文件中添加以下配置:{ "mcpServers": { "flights": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/PARENT/FOLDER", "run", "flights.py" ] } } }请将
/ABSOLUTE/PATH/TO/PARENT/FOLDER替换为此仓库的实际路径。你可能需要在 command 字段中填写
uv可执行文件的完整路径。运行以下命令即可获取:- 在 MacOS/Linux 上运行
which uv - 在 Windows 上运行
where uv
示例:
{ "mcpServers": { "flights": { "command": "/Users/sahitmamidipaka/.local/bin/uv", "args": [ "--directory", "/Users/sahitmamidipaka/Documents/Google-Flights-MCP-Server", "run", "flights.py" ] } } } - 在 MacOS/Linux 上运行
更多信息请参阅 Cursor MCP 官方文档。
🚀 使用示例
- 为我展示 2026 年 1 月 1 日从亚特兰大飞往上海的航班选项
- 这个周末从底特律飞往亚特兰大的航班票价如何?
- 我住在纽约,想去日本。查找本周五出发的最便宜航班选项,并考虑我附近的所有机场!
- 为我展示今天从 LAX 出发的航班选项,但只要晚上 8:00 之后的航班
✨ 即将推出的功能
- 更完善的往返功能 🚀
- 多城市功能 🌍
- 探索 / 随处出发功能 🗺️
- 价格图表和历史价格 📈
🤝 参与贡献
欢迎:
- 提交 Bug 或功能请求
- 提交拉取请求
- 直接联系我:[email protected]
📄 许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
这意味着您可以自由地:
- 将本软件用于商业用途
- 修改源代码
- 分发本软件
- 私下使用本软件
根据 MIT 许可证的条款,您必须在任何分发的软件或衍生作品中包含原始版权声明和引用。
感谢您关注本项目!如有任何原因,欢迎随时联系我。
注意: 本项目仅为兴趣而创建,与 Google、Google Flights 或 Alphabet 旗下任何其他子公司均无任何关联,也未获其认可。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。