# NativeCAD 0.16.0 "Talich" — hand Claude a PDF drawing

**159 tools — the same 159 as 0.15.0; nothing added, removed or renamed.** Command schema 1.42.0 (`import` gains `page`).

**A PDF drawing reads like a DXF sheet.** `cad_import` now takes a vector `.pdf` with `mode: "drawing"`:

1. **One page of a manufacturer or datasheet drawing comes back as a drawing.** You get its views, their projection (first or third angle), each view's scale measured from its own dimensions, the dimensions and the title block. `page` picks the sheet of a drawing set, `saveCurves` writes every view's curves to a file, and `drawingView` pages one view's curves into the reply.
2. **A scan is refused, never guessed at.** A page that is only a picture comes back `PDF_RASTER_ONLY`, asking for the vector PDF, a DXF or a STEP. Every other refusal is a named `PDF_*` code with a remedy.
3. **DXF, further.** Profiles drawn on a tilted plane now chain on that plane and extrude along its normal. Closed fit-point splines close smoothly. Multiline title-block attributes are read whole. Past 24 bodies, `cad_import` answers compact rows, so a 44-outline nest fits in the reply instead of spilling to a file.
4. **Also:** `cad_drill_hole` / `cad_hole_pattern` tap Unified sizes (`1/4-20 UNC`, `#10-32 UNF`, `1-32 UN`). `cad_rib` attaches to the base's top face by default. `cad_server_info` stays inside its budget. `tools/list` is 10 KB smaller.

`cad_import` needs a licence key (a free key: https://featureboard.ai/register?source=nativecad).

NativeCAD is also a **Claude chat plugin**: `nativecad-mcp-0.16.0.plugin` is the same server as the `.mcpb`, with the `nativecad` skill.

See `packages/mcp/CHANGELOG.md` for every change.

## Gates

bundle-smoke over stdio on the shipped `.mcpb`, `.plugin` and the unpacked `.tgz` (initialize 0.16.0, tools/list 159, `cad_server_info` staged git `8ad58fc1` tree `669fe0ffafc8` 509 files, `cad_box` / `cad_preview_body` / `cad_mass_properties` run unlicensed, `cad_export_body` refused by name, no file written) · licensed bundle-smoke on the `.mcpb` (export + NIST STEP import) · PDF drawing over the packed bundle: page 1 four views at 2:1 third angle, page 2 three views first angle, `drawingView`, `PDF_PAGE_RANGE`, `PDF_RASTER_ONLY`, `.pdf` without the mode refused, unlicensed `E_LICENSE_REQUIRED` · mcp-smoke 159 = 159 (bundle vs source) · cadsf-1128 · package · cadsf-1148 · cadsf-1662 · schema-sync · tool-list-budget · cadsf-2683 · cadsf-2699 · DXF over MCP: cadsf-2615 · cadsf-2617 · cadsf-2623 · cadsf-2658 · cadsf-2662 · cadsf-2664 · cadsf-2665 · cadsf-2696 · cadsf-2697

**Downloads are served from featureboard.ai** (see `latest.json` for bytes + sha256):
https://featureboard.ai/nativecad/releases/nativecad-mcp-0.16.0.mcpb
Built from master `8ad58fc1` with `SOURCE_DATE_EPOCH` pinned to its commit time (1790695412), esbuild 0.28.1, runtime dependencies from `packages/mcp/package-lock.json` (`npm ci`), and the offline `plugin/lib/zip.js` writer. `dist/server.min.js` sha256 `5440b89b…` is identical in the `.tgz`, the `.mcpb` and the `.plugin`.
