关于 google-flights
google-flights 是一个 MCP 服务,用于搜索 Google Flights 的航班信息,支持航班查询、日期价格网格和机场代码查询。无需 API 密钥即可使用,适合需要比较票价或查找机场代码的用户。
主要功能
- 01航班搜索,支持舱位、中转、排序和分页筛选
- 02日期价格网格,查看约 60 天内每日最低价格
- 03按城市名、机场名或部分代码查询 IATA 机场代码
- 04支持成人、儿童和婴儿多乘客及多种货币
- 05内置限速机制以避免被限流
适用场景
- 01查找指定航线最便宜的直飞航班
- 02确定某月内票价最低的出行日期
- 03查询城市对应的机场 IATA 代码
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端暴露 search_flights、get_date_grid、find_airport_code 三个工具,以及 google-flights://config 配置资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| adults | number | 否 | 成人乘客人数(默认值:1) |
| offset | number | 否 | 分页偏移量(默认:0) |
| origin | string | 是 | 出发机场 IATA 代码(例如,"SFO") |
| sort_by | enum | 否 | 排序方式(默认:best)best | price | duration | departure | arrival |
| children | number | 否 | 儿童乘客人数(默认:0) |
| currency | string | 否 | 价格使用的货币代码(默认:USD) |
| max_stops | enum | 否 | 最大经停次数筛选条件(默认:any)any | nonstop | 1 | 2 |
| trip_type | enum | 否 | 行程类型(默认:one_way)one_way | round_trip |
| seat_class | enum | 否 | 客舱等级(默认:economy)economy | premium_economy | business | first |
| destination | string | 是 | 目的地机场 IATA 代码(例如,"LAX") |
| max_results | number | 否 | 每页结果数上限,1–50(默认值:20) |
| return_date | string | 否 | 往返行程必填的返程日期,格式为 YYYY-MM-DD |
| departure_date | string | 是 | 出发日期,格式为 YYYY-MM-DD |
| infants_on_lap | number | 否 | 怀抱婴儿人数(默认值:0) |
| infants_in_seat | number | 否 | 占座婴儿人数(默认值:0) |
| exclude_basic_economy | boolean | 否 | 排除基础经济舱票价(默认值:true)。设为 false 可包含所有票价等级。 |
详细介绍
Google Flights MCP 服务
用于搜索 Google Flights 的 MCP 服务。提供航班搜索、用于查找最低价出行日期的日期价格网格,以及机场 IATA 代码查询。无需 API 密钥。
亮点
- 航班搜索,支持完整筛选(舱位等级、经停次数、排序、分页)
- 日期价格网格,可在约 60 天内查找最低价出行日期
- 按城市名称、机场名称或部分代码查询机场 IATA 代码
- 无需 API 密钥或身份验证
- 支持多名乘客(成人、儿童、婴儿)
- 支持多种货币
- 内置速率限制,避免请求受限
- 使用 TypeScript,并启用严格类型检查
功能
工具
| 工具 | 描述 |
|---|---|
search_flights | 搜索航班,支持完整筛选、排序和分页 |
get_date_grid | 获取日期价格网格,显示每天的最低航班价格 |
find_airport_code | 按城市名称、机场名称或部分代码查询机场 IATA 代码 |
资源
| 资源 | 描述 |
|---|---|
google-flights://config | 服务配置和可用工具 |
快速开始
Claude Desktop 配置
如果你是首次使用 MCP 服务,请确保已安装 Claude Desktop 应用程序,并按照官方 MCP 设置说明操作。
macOS:~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"google-flights": {
"command": "npx",
"args": ["-y", "google-flights-mcp-server"]
}
}
}
重启 Claude Desktop,即可开始使用!
使用示例
搜索航班:
"Find me the cheapest nonstop flights from SFO to LAX next Friday"
查找最低价日期:
"When is the cheapest time to fly from JFK to London in March?"
查询机场代码:
"What are the airport codes for Tokyo?"
开发
安装依赖
npm install
构建
npm run build
在开发模式下运行
npm run dev
测试
# Run manual tests (hits real Google Flights)
npm run test:manual
项目结构
google-flights/
├── local/ # Local server implementation
│ ├── src/
│ │ └── index.ts # Main entry point
│ └── package.json
├── shared/ # Shared business logic
│ ├── src/
│ │ ├── server.ts # Server factory with DI
│ │ ├── tools.ts # Tool registration
│ │ ├── tools/ # Individual tool implementations
│ │ ├── resources.ts # Resource implementations
│ │ ├── flights-client/ # Google Flights client (protobuf + HTTP)
│ │ └── logging.ts
│ └── package.json
├── tests/ # Test suite
│ └── manual/ # Manual tests against real Google Flights
└── package.json # Root workspace config
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。