A Model Context Protocol (MCP) server for aircraft mission analysis with a dual-backend architecture:
| Backend | Description |
|---|---|
| Aviary (primary) | NASA's open-source trajectory optimizer built on OpenMDAO + Dymos. Gradient-based optimization of climb/cruise/descent with fuel burn, GTOW, and detailed timeseries. |
| NSEG (fallback) | Built-in segment physics engine using Breguet range, ISA atmosphere, and drag-polar models. Works for any aircraft without external solvers. |
The server automatically selects Aviary when installed and compatible with the aircraft geometry, falling back to NSEG otherwise.
| Tool | Description |
|---|---|
create_mission |
Start a new mission analysis session |
close_mission |
Close a session and free resources |
set_vehicle |
Set vehicle parameters (weight, wing area, CD0, k, TSFC) |
set_segments |
Define flight segment sequence (NSEG backend) |
configure_mission |
Set range, passengers, cruise Mach/altitude, backend |
run_mission |
Execute analysis — Aviary or NSEG |
get_results |
Retrieve results from the last run |
get_trajectory |
Get timeseries trajectory data (Aviary) or per-segment summaries (NSEG) |
check_constraints |
Evaluate pass/fail for user-defined constraints |
# Install base (NSEG only)
pip install -e .
# Install with Aviary
pip install -e ".[aviary]"
# Run the MCP server
mission-mcpThis MCP includes a CPACS adapter (src/mission_mcp/cpacs_adapter.py) that
bridges the mission analysis to the shared-CPACS aircraft analysis pipeline.
The adapter reads aircraft geometry and aerodynamic/engine results from CPACS (produced by TiGL, SU2, and pyCycle), runs trajectory optimization via Aviary or segment analysis via NSEG, and writes mission results (fuel burn, GTOW, trajectory data) back to CPACS.
| Direction | XPaths |
|---|---|
| Reads | .//vehicles/aircraft/model/reference, .//analysisResults/aero, .//vehicles/engines/engine/analysis/mcpResults |
| Writes | .//vehicles/aircraft/model/analysisResults/mission (backend, fuel_burned_kg, gtow_kg, wing_mass_kg, converged, trajectory_points, range, segments) |
python pipeline/shared_cpacs_orchestrator.py D150_v30.xml --mcps tigl su2 pycycle missionSee cmudrc/aircraft-analysis for full pipeline documentation.
| MCP | Repository |
|---|---|
| TiGL (geometry) | cmudrc/tigl-mcp |
| SU2 (CFD aerodynamics) | cmudrc/su2-mcp |
| pyCycle (engine cycle) | cmudrc/pycycle-mcp |
- Python >= 3.12
- fastmcp ~= 2.13.1
- pydantic >= 2.6.0
- numpy >= 1.26
Critical: Version pinning is required for Aviary compatibility.
aviary == 0.9.10openmdao == 3.36.0dymos == 1.13.1
Contribution guidelines live in CONTRIBUTING.md.