Skyfly MCP Server

Skyfly MCP Server

Provides real-time aircraft tracking data from OpenSky Network combined with FAA aircraft registry information, enabling rich aviation queries that merge live flight positions with technical specifications.

Category
Visit Server

README

✈️ Skyfly MCP Server

Python 3.10+ MCP Protocol License: MIT OpenSky Network

Un serveur MCP (Model Context Protocol) qui combine données de vol en temps réel et référentiel FAA pour créer des expériences IA riches en contexte aéronautique.

🌐 Demo live: skyfly.mcp.hamon.link


🎯 Qu'est-ce que c'est ?

Skyfly MCP est un serveur qui permet à des LLMs comme Claude ou ChatGPT d'accéder à :

  1. 📡 Données live (via OpenSky Network)

    • Positions des avions en temps réel
    • Trajectoires et historiques de vol
    • Arrivées/départs par aéroport
  2. 🗄️ Référentiel FAA (base SQL locale)

    • 93,000+ modèles d'aéronefs
    • 306,000+ avions immatriculés US
    • 4,700+ moteurs référencés

Résultat : Des requêtes intelligentes qui combinent position live + specs techniques !


🚀 Fonctionnalités

19 Outils MCP disponibles

Catégorie Outils Description
Live get_aircraft_states Positions actuelles des aéronefs
Live get_aircraft_in_region Aéronefs par zone (France, Europe...)
Live get_arrivals_by_airport Arrivées à un aéroport
Live get_departures_by_airport Départs d'un aéroport
Live get_track_by_aircraft Trajectoire d'un aéronef
SQL db_lookup_by_mode_s Enrichit un icao24 avec specs
SQL db_search_aircraft Recherche dans le registre FAA
SQL db_search_models Recherche modèles (Boeing, Cessna...)
SQL db_enrich_live_aircraft Enrichit une liste d'icao24
SQL db_sql_query Requête SQL personnalisée

📦 Installation

Prérequis

  • Python 3.10+
  • Certificat SSL (Let's Encrypt recommandé)

Installation rapide

# Cloner le repo
git clone https://github.com/vog01r/skyfly-mcp.git
cd skyfly-mcp

# Créer l'environnement virtuel
python3 -m venv venv
source venv/bin/activate

# Installer les dépendances
pip install -r requirements.txt

# Télécharger les données FAA (optionnel mais recommandé)
# Depuis: https://www.faa.gov/licenses_certificates/aircraft_certification/aircraft_registry/releasable_aircraft_download
mkdir ReleasableAircraft
# Placer ACFTREF.txt, ENGINE.txt, MASTER.txt dans ce dossier

# Lancer l'ingestion
python -c "
from aircraftdb.database import get_database
from aircraftdb.ingest import ingest_directory
from pathlib import Path
db = get_database()
ingest_directory(Path('ReleasableAircraft'), db)
"

# Démarrer le serveur
./start.sh

🔗 Configuration MCP

Pour Claude Desktop

Ajoutez dans votre configuration MCP :

{
  "mcpServers": {
    "skyfly": {
      "url": "https://skyfly.mcp.hamon.link/sse"
    }
  }
}

Auto-hébergé

{
  "mcpServers": {
    "skyfly": {
      "url": "https://your-domain.com/sse"
    }
  }
}

💡 Exemples de requêtes

Requête simple

"Montre-moi les avions au-dessus de la France"

Requête enrichie

"Pour les 5 avions au-dessus de Paris, donne-moi le propriétaire, le type d'appareil et le nombre de moteurs"

Requête analytique

"Combien de Boeing 737 sont dans le registre FAA ? Quels sont les 5 états avec le plus d'immatriculations ?"

Requête combinée

"Parmi les hélicoptères actuellement en vol aux USA, quel est le modèle le plus fréquent ?"


🏗️ Architecture

skyfly-mcp/
├── http_server.py          # Serveur MCP unifié (SSE + REST)
├── opensky_client.py       # Client async OpenSky API
├── server.py               # Serveur MCP stdio (usage local)
├── aircraftdb/
│   ├── database.py         # SQLite avec schéma + CRUD
│   ├── ingest.py           # Ingestion fichiers FAA
│   └── tools.py            # Outils MCP AircraftDB
├── requirements.txt
├── setup_ssl.sh            # Configuration Let's Encrypt
├── start.sh                # Script de démarrage
└── opensky-mcp.service     # Service systemd

📊 Données FAA

Le référentiel FAA contient :

Table Contenu Source
aircraft_models 93K+ modèles ACFTREF.txt
aircraft_registry 306K+ aéronefs US MASTER.txt
engines 4.7K+ moteurs ENGINE.txt

Téléchargement : FAA Releasable Aircraft Database


🔧 Déploiement Production

Avec Apache (reverse proxy)

<VirtualHost *:443>
    ServerName skyfly.yourdomain.com
    
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/skyfly.yourdomain.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/skyfly.yourdomain.com/privkey.pem
    
    ProxyPreserveHost On
    ProxyPass / http://127.0.0.1:8443/
    ProxyPassReverse / http://127.0.0.1:8443/
</VirtualHost>

Service systemd

sudo cp opensky-mcp.service /etc/systemd/system/
sudo systemctl enable opensky-mcp
sudo systemctl start opensky-mcp

🤝 Contribution

Les contributions sont les bienvenues !

  1. Fork le projet
  2. Créez une branche (git checkout -b feature/amazing-feature)
  3. Committez (git commit -m 'Add amazing feature')
  4. Push (git push origin feature/amazing-feature)
  5. Ouvrez une Pull Request

📜 Licence

MIT License - voir LICENSE


🙏 Crédits


<p align="center"> <b>Fait avec ❤️ pour la communauté IA & Aviation</b> </p>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured