mcpField
F
Flights Mcp Server

Flights Mcp Server

本地服务
github.com/smamidipaka6地图与出行3083 周前更新

关于 Flights Mcp Server

这是一个 MCP 服务,用于让 Agent 或 LLM 查询 Google Flights 的航班数据。它面向希望通过自然语言查询航班的用户,目前仅支持单程查询,往返会拆分为两个单程查询。

主要功能

  1. 01查询指定航线的航班详情
  2. 02按价格排序返回最便宜的航班
  3. 03返回 Google Flights 标记的推荐航班
  4. 04按出发时间前后筛选航班

适用场景

  1. 01查询某日两地之间的航班选项
  2. 02寻找指定时间段内出发的航班
  3. 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 演示视频]

🛠️ 工具

可用函数/工具
  1. get_general_flights_info():获取指定航线的全面航班信息

    • 提供最多 40 个航班的详细信息
    • 返回易于阅读的航班描述列表
  2. get_cheapest_flights():查找价格最实惠的航班选项

    • 按价格从低到高排序并返回航班
    • 包含当前航线的整体价格信息
  3. get_best_flights():获取 Google Flights 推荐的顶级航班

    • 识别并返回 Google Flights 标记为“最佳”的航班
    • 帮助用户找到最合适的航班选择
  4. 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
  1. 确保已下载最新版本的 Claude for Desktop!

  2. 克隆此仓库

  3. 安装 uv 以设置 Python 环境

    MacOS
    # Check if uv is already installed
    uv --version
    
    # If not installed
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    Windows
    # Check if uv is already installed
    uv --version
    
    # If not installed
    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    

    ⚠️ 重要:安装完成后,必须重启终端,才能识别 uv 命令!

  4. 将此航班 MCP 服务添加到 Claude for Desktop 配置中:

    MacOS
    • 在终端中导航到配置文件位置:~/Library/Application Support/Claude/claude_desktop_config.json
    • 或者,如果你安装了 VSCode 并配置了 Code 别名,可以直接创建或编辑:
    code ~/Library/Application\ Support/Claude/claude_desktop_config.json
    
    Windows
    • 在 PowerShell 中导航到配置文件位置:%AppData%\Claude\claude_desktop_config.json
    • 或者,如果你安装了 VSCode 并配置了 Code 别名,可以直接创建或编辑:
    code $env:AppData\Claude\claude_desktop_config.json
    

    注意:~/Library/Application Support/Claude/config.json 是另一个无关的文件。请勿编辑。

  5. 在 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"
          ]
        }
      }
    }
    
  6. 大功告成!打开 Claude for Desktop,你应该会看到 MCP 工具图标出现(请确保重新打开应用以应用更新——每次更改 claude_desktop_config.json 文件后都需要这样做 😊)

Claude Desktop MCP 工具图标

更多信息请参阅 MCP 官方文档。

Cursor
  1. 打开 Cursor 并进入设置

  2. 点击左侧面板中的 MCP 选项卡

  3. 添加一个新的 MCP 服务(任选一种):

    项目配置
    • 在项目目录中创建 .cursor/mcp.json 文件
    • 适用于仅针对单个项目的工具
    全局配置
    • 在主目录中创建 ~/.cursor/mcp.json 文件
    • 让所有 Cursor 工作区都能使用 MCP 服务
  4. 在 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"
          ]
        }
      }
    }
    
Cursor 航班 MCP 图片

更多信息请参阅 Cursor MCP 官方文档。

🚀 使用示例

  • 为我展示 2026 年 1 月 1 日从亚特兰大飞往上海的航班选项
  • 这个周末从底特律飞往亚特兰大的航班票价如何?
  • 我住在纽约,想去日本。查找本周五出发的最便宜航班选项,并考虑我附近的所有机场!
  • 为我展示今天从 LAX 出发的航班选项,但只要晚上 8:00 之后的航班

✨ 即将推出的功能

  • 更完善的往返功能 🚀
  • 多城市功能 🌍
  • 探索 / 随处出发功能 🗺️
  • 价格图表和历史价格 📈

🤝 参与贡献

欢迎:

📄 许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

这意味着您可以自由地:

  • 将本软件用于商业用途
  • 修改源代码
  • 分发本软件
  • 私下使用本软件

根据 MIT 许可证的条款,您必须在任何分发的软件或衍生作品中包含原始版权声明和引用。


感谢您关注本项目!如有任何原因,欢迎随时联系我。

注意: 本项目仅为兴趣而创建,与 Google、Google Flights 或 Alphabet 旗下任何其他子公司均无任何关联,也未获其认可。

评论

支持 Markdown

第一次接触 MCP?

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

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