# NativeCAD 0.21.0 "DePreist" — Solver Connectors, and a turbojet designed, simulated and costed end to end

**178 tools: the 177 from 0.20.0, plus `cad_feature_edit`.** Installs on 0.17.2 and later can pick this release up through the self-update: `cad_configure {update:"now"}` installs it. Restart Claude to finish.

* **Solver Connectors for SU2, Cantera and OpenFOAM.** One contract every external solver plugs into: a job spec and registry, live progress readers (residuals and percent complete while the run is going), field export that maps results back onto the model, and `solverd`, the background service that queues, runs and tracks solver jobs. One-command host setup for SU2 (v8.5 builds), Cantera and OpenFOAM on Linux, Fedora or Docker, with a convergence check on every run.
* **A turbojet, end to end.** Tail cone and a re-sized exhaust nozzle confirmed by an SU2 compressible-flow result; a Cantera combustor network with stability margin, emissions and the blowout limit on one chart; a turbine-disc rotor-integrity packet with burst margin; off-design compressor and turbine maps; a costed bill of materials; a station diagram of the gas path; and a start-up animation whose streamlines follow a gas-path rule, so flow only goes where the hardware routes it.
* **Edit a feature in place: `cad_feature_edit`.** Change an existing feature's parameters (`{"diameter": 6.6}`) and everything after it rebuilds. You get the before/after diff back. New `constrain_face` and `dimension_face` operations drive a face by a constraint or a dimension.
* **Lattices you can print without supports.** `cellAspect` stretches the cell per axis, `buildDir` sets the build direction, and the lattice report gives `selfSupport`, the minimum strut elevation against that direction. Conformal lattices run as one continuous frame across multi-face skins, and TPMS walls are calibrated.
* **Booleans and finishing features that hold up.** Booleans take a `fuzzy` tolerance, so near-coincident faces from imported parts merge cleanly, and cone, sphere and torus intersections are computed in closed form. Chamfers can run onto spherical faces and no longer give up early at saddle corners. Thread run-out checks fit before it builds, and bolts can be partly threaded to the ISO 4014 / ISO 4762 thread length. `cad_gear` adds straight bevel, spiral bevel and hypoid gears.
* **PMI that survives editing.** Annotations carry through copy, mirror and pattern, and anything that cannot be carried is named. Patterns are written as instances under AP203e2 / AP214, so hole callouts survive the export.
* **Export for every downstream tool.** `cad_export_body` writes PLY and print profiles at a chosen `resolution`, and field bodies too large for memory stream to 3MF and print profiles.
* **Clean sections, early warnings.** Section views cap cut faces without z-fighting, and a coincident-face check flags overlapping faces before they cause trouble in a render, a boolean or an export.
* **Long jobs, fonts and sandbox mode.** Big FEA runs and large STL/OBJ imports return a job id at once and report progress, so a conversation never sits waiting. Engraving fonts ship inside the bundle. `cad_picogk` reports true solid volumes and watertight results. `NATIVECAD_SANDBOX=1` keeps the server inside its workspace with no outbound network, for regulated and air-gapped sites.
* **Command schema 1.62.0** (from 1.57.0). Every change is additive.

See `packages/mcp/CHANGELOG.md` under `## 0.21.0` for every field and refusal.

## Gates

* **bundle-smoke over stdio, on the shipped `.mcpb` and `.plugin`.** tools/list 178; `cad_server_info` 0.21.0, staged git `fb1b36615c88`, kernel tree `5bf4f3620bec`, 739 files. Unlicensed host: the export/import path was not exercised.

**Downloads:** https://featureboard.ai/nativecad/releases/nativecad-mcp-0.21.0.mcpb, https://featureboard.ai/nativecad/releases/nativecad-mcp-0.21.0.plugin and https://featureboard.ai/nativecad/releases/nativecad-mcp-0.21.0.tgz, plus the kernel library https://featureboard.ai/nativecad/releases/nativecad-kernel-0.3.2.tgz (`latest.json` lists bytes and sha256).

```
97afac58a26c4d4068306ad77fce975de3c1394e164b2f42bd12b4b3b22b7f33  nativecad-mcp-0.21.0.mcpb
c6423c9d949a38ac8e8248b8bb02906af230d072b119806bc80ea178be7772d0  nativecad-mcp-0.21.0.plugin
690d215b3d4ef0833e1f9cc968772ce576b8ce2e9591d2f00dce26b7ff089c30  nativecad-mcp-0.21.0.tgz
ddbff515ae856b23af40afcfbb1bfab11757de16d50748d4b1c54d46ad8f3056  nativecad-kernel-0.3.2.tgz
```

**Build.** Built in the Cowork VM from master `fb1b3661` (worktree `ticket/LAND-1012S`), with `SOURCE_DATE_EPOCH` set to 1791792759 (the HEAD commit time), esbuild 0.28.1. `dist/server.min.js` (sha256 `ed308aaf…`) is identical in the `.tgz`, the `.mcpb` and the `.plugin`.
