返回 MCP 目录
public公开dns本地运行

aviationstack-mcp

Aviationstack MCP服务器是一个基于Model Context Protocol的服务,提供与AviationStack API交互的工具,可获取实时航班、未来航班、飞机类型等航空数据。

article

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 客户端配置文件中。

基础用法

  1. 使用 uvx 且不克隆仓库(推荐)
{
  "mcpServers": {
    "Aviationstack MCP": {
      "command": "uvx",
      "args": [
        "aviationstack-mcp"
      ],
      "env": {
        "AVIATION_STACK_API_KEY": "<your-api-key>"
      }
    }
  }
}

高级用法

  1. 通过克隆仓库并在本地运行服务器
{
  "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

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端