README
🚀 Aviationstack MCP 服务器
本项目是一个 MCP(模型上下文协议)服务器,它提供了一套工具,用于与 AviationStack API 进行交互。该服务器公开了用于检索实时和未来航班数据、飞机类型以及飞机详细信息的端点,使您能够轻松地将航空数据集成到自己的应用程序中。
🚀 快速开始
本项目是一个 MCP 服务器,可通过特定端点与 AviationStack API 交互,从而获取航空相关数据。您可以按照以下步骤进行配置,将其集成到您的应用程序中。
✨ 主要特性
- 获取特定航空公司的航班信息
- 检索机场的到达和出发时刻表
- 获取未来航班时刻表
- 获取随机飞机类型
- 获取随机飞机的详细信息
- 获取随机国家的详细信息
- 获取随机城市的详细信息
所有端点均以 MCP 工具的形式实现,可在兼容 MCP 的环境中直接使用。
📦 安装指南
前提条件
- Aviationstack API 密钥(您可以从 Aviationstack 获取免费的 API 密钥)
- Python 3.13 或更高版本
- 已安装 uv 包管理器
💻 使用示例
可用工具
| 属性 | 详情 | |------|------| | 工具 | 描述 | | 参数 | 说明 |
| 工具 | 描述 | 参数 |
|------|-------------|------------|
| flights_with_airline(airline_name: str, number_of_flights: int) | 获取特定航空公司的随机航班样本。 | - airline_name:航空公司名称(例如,"Delta Air Lines")
- number_of_flights:要返回的航班数量 |
| 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:"arrival" 或 "departure"
- 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:"arrival" 或 "departure"
- 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:要返回的城市数量 |
🔧 技术细节
开发
- 主要的服务器逻辑位于
server.py文件中。 - 所有 MCP 工具都定义为使用
@mcp.tool()装饰的 Python 函数。 - 服务器使用
mcp.server.fastmcp中的FastMCP类。
MCP 服务器配置
要将此服务器添加到您喜欢的 MCP 客户端中,您可以将以下内容添加到 MCP 客户端配置文件中。
基础用法
- 使用
uvx且不克隆仓库(推荐)
{
"mcpServers": {
"Aviationstack MCP": {
"command": "uvx",
"args": [
"aviationstack-mcp"
],
"env": {
"AVIATION_STACK_API_KEY": "<your-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": "<your-api-key>"
}
}
}
}
📄 许可证
本项目采用 MIT 许可证。有关详细信息,请参阅 LICENSE。
演示
https://github.com/user-attachments/assets/9325fcce-8ecc-4b01-8923-4ccb2f6968f4
微信扫一扫