Aviationstack MCP服务器
这个项目是一个 MCP(模型上下文协议)服务器 它提供了一组工具来与 AviationStack API。它公开了用于检索实时和未来飞行数据、飞机和飞机详细信息以及核心参考数据(机场、航空公司、航线、税收)的端点,使航空数据易于集成到您的应用程序中。
您还可以在这些著名的MCP服务器存储库中找到Aviationstack MCP服务器,以便于访问:
演示
https://github.com/user-attachments/assets/9325fcce-8ecc-4b01-8923-4ccb2f6968f4
特性
- 获取特定航空公司的航班
- 按日期获取历史航班
- 检索机场的到达和离开时间表
- 获取未来的航班时刻表
- 获取随机飞机类型
- 获取随机飞机的详细信息
- 获取随机国家的详细信息
- 获取随机城市的详细信息
- 列出机场、航空公司、航线和税费
所有端点都作为MCP工具实现,并准备在MCP兼容环境中使用。
先决条件
- Aviationstack API密钥(您可以从获得免费的API密钥 Aviationstack)
- Python 3.13或更新版本
- 已安装uv包管理器
可用工具
| 工具 | 说明 | 参数 |
|---|---|---|
flights_with_airline(airline_name: str, number_of_flights: int) | 获取特定航空公司的航班随机样本。 | - airline_name:航空公司名称(例如“达美航空”) |
- number_of_flights:返回的航班数量 | ||
historical_flights_by_date(flight_date: str, number_of_flights: int, airline_iata: str = "", dep_iata: str = "", arr_iata: str = "") | 获取某个日期的历史航班(基本计划+)。 | - flight_date:日期 YYYY-MM-DD 格式 |
- number_of_flights:返回的航班数量 - airline_iata:可选航空公司IATA过滤器 - dep_iata:可选出发机场IATA过滤器 - arr_iata:可选到达机场IATA过滤器| | flight_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_name: str, number_of_flights: int) |获取给定机场和航空公司的到达或离开时间表。 | - airport_iata_code:机场的IATA代码(例如“JFK”) - schedule_type:“到达”或“离开” - airline_name:航空公司名称 - number_of_flights:返回的航班数量| | future_flights_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_iata: str, date: str, number_of_flights: int) |获取给定机场、航空公司和日期的未来预定航班。 | - airport_iata_code :机场的IATA代码 - schedule_type:“到达”或“离开” - airline_iata:航空公司的IATA代码(例如,达美航空的“DL”) - date:日期 YYYY-MM-DD 格式 - number_of_flights:返回的航班数量| | random_aircraft_type(number_of_aircraft: int) |获取随机飞机类型。 | - number_of_aircraft:返回的飞机类型数量| | random_airplanes_detailed_info(number_of_airplanes: int) |获取随机飞机的详细信息。 | - number_of_airplanes:返回的飞机数量| | random_countries_detailed_info(number_of_countries: int) |获取随机国家的详细信息。 | - number_of_countries:返回的国家数目| | random_cities_detailed_info(number_of_cities: int) |获取随机城市的详细信息。 | - number_of_cities:返回的城市数量| | list_airports(limit: int = 10, offset: int = 0, search: str = "") |列出机场。 | - limit:要返回的结果数 - offset:分页偏移 - search:可选搜索查询| | list_airlines(limit: int = 10, offset: int = 0, search: str = "") |列出航空公司。 | - limit:要返回的结果数 - offset:分页偏移 - search:可选搜索查询| | list_routes(limit: int = 10, offset: int = 0, airline_iata: str = "", dep_iata: str = "", arr_iata: str = "") |列出路线。 | - limit:要返回的结果数 - offset:分页偏移 - airline_iata:可选航空公司IATA过滤器 - dep_iata:可选出发机场IATA过滤器 - arr_iata:可选到达机场IATA过滤器| | list_taxes(limit: int = 10, offset: int = 0, search: str = "") |列出航空税。 | - limit:要返回的结果数 - offset:分页偏移 - search:可选搜索查询|
发展
- 主服务器逻辑位于
server.py. - 所有MCP工具都被定义为Python函数,用
@mcp.tool(). - 服务器使用
FastMCP类从mcp.server.fastmcp.
MCP服务器配置
要将此服务器添加到您最喜欢的MCP客户端,您可以将以下内容添加到MCP客户端配置文件中。
- 使用
uvx不克隆存储库(推荐)
{
"mcpServers": {
"Aviationstack MCP": {
"command": "uvx",
"args": [
"aviationstack-mcp"
],
"env": {
"AVIATION_STACK_API_KEY": ""
}
}
}
}- 通过克隆存储库并在本地运行服务器
{
"mcpServers": {
"Aviationstack MCP": {
"command": "uv",
"args": [
"--directory",
"/path/to/aviationstack-mcp/src/aviationstack_mcp",
"run",
"-m",
"aviationstack_mcp",
"mcp",
"run"
],
"env": {
"AVIATION_STACK_API_KEY": ""
}
}
}
}许可证
该项目根据MIT许可证获得许可。看 许可证 了解详情。
