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

aviationstack-mcp

该项目是一个基于AviationStack API的MCP服务器,提供实时和未来航班数据、飞机类型及详细信息的查询工具,便于集成航空数据到应用中。

article

README

🚀 Aviationstack MCP 服务器

本项目是一个 MCP(模型上下文协议)服务器,它提供了一套与 AviationStack API 进行交互的工具。该服务器公开了用于检索实时和未来航班数据、飞机类型以及飞机详细信息的端点,便于将航空数据集成到你的应用程序中。

🚀 快速开始

此项目可帮助你轻松集成航空数据到应用程序,以下是相关使用说明。你可以通过代码或配置文件来使用本项目的功能。

演示

https://github.com/user-attachments/assets/9325fcce-8ecc-4b01-8923-4ccb2f6968f4

✨ 主要特性

  • 获取特定航空公司的航班信息
  • 检索机场的到达和出发时刻表
  • 获取未来航班时刻表
  • 获取随机飞机类型
  • 获取随机飞机的详细信息
  • 获取随机国家的详细信息
  • 获取随机城市的详细信息

所有端点均以 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 代码(例如,Delta 的 "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 文件。

即贴即用配置

MCP 客户端配置生成器

选择客户端,补齐所需环境变量,再复制根据当前 MCP 公开配置生成的完整文件

terminal
环境变量lock填写内容仅保留在当前浏览器标签页,不会上传或保存
Claude Desktop
{
  "mcpServers": {
    "aviationstack-mcp": {
      "command": "uvx",
      "args": [
        "aviationstack-mcp"
      ],
      "env": {
        "AVIATION_STACK_API_KEY": "<AVIATION_STACK_API_KEY>"
      }
    }
  }
}
建议保存到claude_desktop_config.json
help

运行方式说明

cloud

托管运行

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

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

本地运行 / 其它方式

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

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