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.
README
✈️ Skyfly MCP Server
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 à :
-
📡 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
-
🗄️ 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 !
- Fork le projet
- Créez une branche (
git checkout -b feature/amazing-feature) - Committez (
git commit -m 'Add amazing feature') - Push (
git push origin feature/amazing-feature) - Ouvrez une Pull Request
📜 Licence
MIT License - voir LICENSE
🙏 Crédits
- OpenSky Network - Données de vol en temps réel
- FAA - Registre des aéronefs US
- Anthropic MCP - Model Context Protocol
<p align="center"> <b>Fait avec ❤️ pour la communauté IA & Aviation</b> </p>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。