aviationstack-mcp


Nameaviationstack-mcp JSON
Version 1.3.0 PyPI version JSON
download
home_pageNone
SummaryAn MCP server using the AviationStack API to fetch real-time flight data including airline flights, airport schedules, future flights and aircraft types
upload_time2025-07-18 15:16:45
maintainerNone
docs_urlNone
authorNone
requires_python>=3.13
licenseNone
keywords ai llm mcp model-context-protocol server
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ## Aviationstack MCP Server

This project is an **MCP (Model Context Protocol) server** that provides a set of tools to interact with the [AviationStack API](https://aviationstack.com/). It exposes endpoints for retrieving real-time and future flight data, aircraft types, and airplane details, making it easy to integrate aviation data into your applications.

### Demo

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

### Features

- **Get flights for a specific airline**
- **Retrieve arrival and departure schedules for airports**
- **Fetch future flight schedules**
- **Get random aircraft types**
- **Get detailed info on random airplanes**

All endpoints are implemented as MCP tools and are ready to be used in an MCP-compatible environment.

### Prerequisites

- Aviationstack API Key (You can get a FREE API Key from [Aviationstack](https://aviationstack.com/signup/free))
- Python 3.13 or newer
- uv package manager installed

### Available Tools

| Tool | Description | Parameters |
|------|-------------|------------|
| `flights_with_airline(airline_name: str, number_of_flights: int)` | Get a random sample of flights for a specific airline. | - **`airline_name`**: Name of the airline (e.g., "Delta Air Lines")<br> - **`number_of_flights`**: Number of flights to return |
| `flight_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_name: str, number_of_flights: int)` | Get arrival or departure schedules for a given airport and airline. | - **`airport_iata_code`**: IATA code of the airport (e.g., "JFK")<br> - **`schedule_type`**: "arrival" or "departure"<br> - **`airline_name`**: Name of the airline<br> - **`number_of_flights`**: Number of flights to return |
| `future_flights_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_iata: str, date: str, number_of_flights: int)` | Get future scheduled flights for a given airport, airline, and date. | - **`airport_iata_code`** : IATA code of the airport<br> - **`schedule_type`**: "arrival" or "departure"<br> - **`airline_iata`**: IATA code of the airline (e.g., "DL" for Delta)<br> - **`date`**: Date in `YYYY-MM-DD` format<br> - **`number_of_flights`**: Number of flights to return |
| `random_aircraft_type(number_of_aircraft: int)` | Get random aircraft types. | - **`number_of_aircraft`**: Number of aircraft types to return |
| `random_airplanes_detailed_info(number_of_airplanes: int)` | Get detailed info on random airplanes. | - **`number_of_airplanes`**: Number of airplanes to return |

### Development

- The main server logic is in `server.py`.
- All MCP tools are defined as Python functions decorated with `@mcp.tool()`.
- The server uses the `FastMCP` class from `mcp.server.fastmcp`.

### MCP Server configuration

To add this server to your favorite MCP client, you can add the following to your MCP client configuration file.

1. Using `uvx` without cloning the repository (recommended)

```json
{
  "mcpServers": {
    "Aviationstack MCP": {
      "command": "uvx",
      "args": [
        "aviationstack-mcp"
      ],
      "env": {
        "AVIATION_STACK_API_KEY": "<your-api-key>"
      }
    }
  }
}
```

2. By cloning the repository and running the server locally

```json
{
  "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>"
      }
    }
  }
}
```

## License

This project is licensed under the MIT License. See [LICENSE](LICENSE) for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "aviationstack-mcp",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.13",
    "maintainer_email": null,
    "keywords": "ai, llm, mcp, model-context-protocol, server",
    "author": null,
    "author_email": "Pradumna Saraf <pradumnasaraf@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/b2/7a/660c80cefc802eca620d765892a6393ef60f92ce8ad96ef27d61dddade5f/aviationstack_mcp-1.3.0.tar.gz",
    "platform": null,
    "description": "## Aviationstack MCP Server\n\nThis project is an **MCP (Model Context Protocol) server** that provides a set of tools to interact with the [AviationStack API](https://aviationstack.com/). It exposes endpoints for retrieving real-time and future flight data, aircraft types, and airplane details, making it easy to integrate aviation data into your applications.\n\n### Demo\n\nhttps://github.com/user-attachments/assets/9325fcce-8ecc-4b01-8923-4ccb2f6968f4\n\n### Features\n\n- **Get flights for a specific airline**\n- **Retrieve arrival and departure schedules for airports**\n- **Fetch future flight schedules**\n- **Get random aircraft types**\n- **Get detailed info on random airplanes**\n\nAll endpoints are implemented as MCP tools and are ready to be used in an MCP-compatible environment.\n\n### Prerequisites\n\n- Aviationstack API Key (You can get a FREE API Key from [Aviationstack](https://aviationstack.com/signup/free))\n- Python 3.13 or newer\n- uv package manager installed\n\n### Available Tools\n\n| Tool | Description | Parameters |\n|------|-------------|------------|\n| `flights_with_airline(airline_name: str, number_of_flights: int)` | Get a random sample of flights for a specific airline. | - **`airline_name`**: Name of the airline (e.g., \"Delta Air Lines\")<br> - **`number_of_flights`**: Number of flights to return |\n| `flight_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_name: str, number_of_flights: int)` | Get arrival or departure schedules for a given airport and airline. | - **`airport_iata_code`**: IATA code of the airport (e.g., \"JFK\")<br> - **`schedule_type`**: \"arrival\" or \"departure\"<br> - **`airline_name`**: Name of the airline<br> - **`number_of_flights`**: Number of flights to return |\n| `future_flights_arrival_departure_schedule(airport_iata_code: str, schedule_type: str, airline_iata: str, date: str, number_of_flights: int)` | Get future scheduled flights for a given airport, airline, and date. | - **`airport_iata_code`** : IATA code of the airport<br> - **`schedule_type`**: \"arrival\" or \"departure\"<br> - **`airline_iata`**: IATA code of the airline (e.g., \"DL\" for Delta)<br> - **`date`**: Date in `YYYY-MM-DD` format<br> - **`number_of_flights`**: Number of flights to return |\n| `random_aircraft_type(number_of_aircraft: int)` | Get random aircraft types. | - **`number_of_aircraft`**: Number of aircraft types to return |\n| `random_airplanes_detailed_info(number_of_airplanes: int)` | Get detailed info on random airplanes. | - **`number_of_airplanes`**: Number of airplanes to return |\n\n### Development\n\n- The main server logic is in `server.py`.\n- All MCP tools are defined as Python functions decorated with `@mcp.tool()`.\n- The server uses the `FastMCP` class from `mcp.server.fastmcp`.\n\n### MCP Server configuration\n\nTo add this server to your favorite MCP client, you can add the following to your MCP client configuration file.\n\n1. Using `uvx` without cloning the repository (recommended)\n\n```json\n{\n  \"mcpServers\": {\n    \"Aviationstack MCP\": {\n      \"command\": \"uvx\",\n      \"args\": [\n        \"aviationstack-mcp\"\n      ],\n      \"env\": {\n        \"AVIATION_STACK_API_KEY\": \"<your-api-key>\"\n      }\n    }\n  }\n}\n```\n\n2. By cloning the repository and running the server locally\n\n```json\n{\n  \"mcpServers\": {\n    \"Aviationstack MCP\": {\n      \"command\": \"uv\",\n      \"args\": [\n        \"--directory\",\n        \"/path/to/aviationstack-mcp/src/aviationstack_mcp\",\n        \"run\",\n        \"-m\",\n        \"aviationstack_mcp\",\n        \"mcp\",\n        \"run\"\n      ],\n      \"env\": {\n        \"AVIATION_STACK_API_KEY\": \"<your-api-key>\"\n      }\n    }\n  }\n}\n```\n\n## License\n\nThis project is licensed under the MIT License. See [LICENSE](LICENSE) for details.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "An MCP server using the AviationStack API to fetch real-time flight data including airline flights, airport schedules, future flights and aircraft types",
    "version": "1.3.0",
    "project_urls": {
        "Homepage": "https://github.com/pradumnasaraf/aviationstack-mcp",
        "Issues": "https://github.com/pradumnasaraf/aviationstack-mcp/issues",
        "Repository": "https://github.com/pradumnasaraf/aviationstack-mcp"
    },
    "split_keywords": [
        "ai",
        " llm",
        " mcp",
        " model-context-protocol",
        " server"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a64c7408af05624328d7c1be459c3700c86d60c65693da850cfeb0d279c5023a",
                "md5": "39843c972fd35678139982628ff6a4e7",
                "sha256": "3215b1237491f3f108d92a1bc37d0c6a6b3ea96e6ebdb898fea1b8a1172d84ab"
            },
            "downloads": -1,
            "filename": "aviationstack_mcp-1.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "39843c972fd35678139982628ff6a4e7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.13",
            "size": 6019,
            "upload_time": "2025-07-18T15:16:44",
            "upload_time_iso_8601": "2025-07-18T15:16:44.428659Z",
            "url": "https://files.pythonhosted.org/packages/a6/4c/7408af05624328d7c1be459c3700c86d60c65693da850cfeb0d279c5023a/aviationstack_mcp-1.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b27a660c80cefc802eca620d765892a6393ef60f92ce8ad96ef27d61dddade5f",
                "md5": "3ed9543d6148ef1f92a31b986a42cfda",
                "sha256": "e8b028a5de951b372b66a4b5fcc7110519b43d386eed08f3cdc94c2432e7c1f5"
            },
            "downloads": -1,
            "filename": "aviationstack_mcp-1.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3ed9543d6148ef1f92a31b986a42cfda",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.13",
            "size": 24250,
            "upload_time": "2025-07-18T15:16:45",
            "upload_time_iso_8601": "2025-07-18T15:16:45.173082Z",
            "url": "https://files.pythonhosted.org/packages/b2/7a/660c80cefc802eca620d765892a6393ef60f92ce8ad96ef27d61dddade5f/aviationstack_mcp-1.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-18 15:16:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pradumnasaraf",
    "github_project": "aviationstack-mcp",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "aviationstack-mcp"
}
        
Elapsed time: 1.21656s