@vcad/mcp 0.10.0-main.87 → 0.10.0-main.89

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,4 +6,4 @@ vcad's MCP server as a self-contained bundle (server + BRep kernel WASM).
6
6
  { "mcpServers": { "vcad": { "command": "npx", "args": ["-y", "@vcad/mcp"] } } }
7
7
  ```
8
8
 
9
- Built from 84f01fc54a7621565adbbcf27f3e0c8f5ce65df8 at 2026-09-10T01:39:10.625Z. Source: https://github.com/ecto/vcad
9
+ Built from 6131e39c56e1d09b46f7c94a67847908b9bd3795 at 2026-10-13T20:14:10.251Z. Source: https://github.com/ecto/vcad
package/index.mjs CHANGED
@@ -41713,6 +41713,75 @@ var init_CHANGELOG = __esm({
41713
41713
  CHANGELOG_default = {
41714
41714
  $schema: "./changelog.schema.json",
41715
41715
  entries: [
41716
+ {
41717
+ id: "2026-10-13-render-hole-callouts-and-tinted-style",
41718
+ version: "0.10.0",
41719
+ date: "2026-10-13",
41720
+ category: "feat",
41721
+ title: "vcad-render: hole/PCD callouts and material tints",
41722
+ summary: "--callouts annotates holes and bosses with \xD8 leaders and collapses equal-pitch bolt circles to one 'n\xD7 \xD8d on \xD8pcd PCD' callout; --style tinted keeps the drafting look but tints fills by material so steel, aluminium and black parts read apart.",
41723
+ features: [
41724
+ "render",
41725
+ "drafting",
41726
+ "manufacture"
41727
+ ]
41728
+ },
41729
+ {
41730
+ id: "2026-09-17-native-instant-open-contour-cam",
41731
+ version: "0.10.0",
41732
+ date: "2026-09-17",
41733
+ category: "feat",
41734
+ title: "Native app: background solve, cached opens, contour CAM",
41735
+ summary: "The Mac app solves documents off the main thread with live progress, reuses the on-disk mesh cache and a shipped .vcadmesh bundle for instant reopen, and machines DXF outlines as contour cuts with tabs.",
41736
+ details: "Opening a slow document no longer beachballs: the kernel runs on its own thread, the viewport shows 'Solving\u2026 n of N' and draws parts as they land, and every document is evaluated once instead of twice. The app now consults the content-addressed root-mesh cache that the CLI already used, so anything a vcad tool has solved opens without a kernel walk, and Save writes a .vcadmesh bundle beside the document that Open imports first. In the kernel, unions of prismatic parts that share their top and bottom planes now come out right: a face split was being silently refused once a neighbouring split had imprinted vertices on its edge, the mesh boolean classified fragments with a single ray that any cracked operand could fool, a fillet tangent to a bore stopped the bore from cutting the fillet's caps, and a union outside its volume bound (or visibly cracked and contradicted by the mesh boolean) is re-cut instead of returned as a silently wrong analytic solid. Face-name propagation no longer dominates chained mesh booleans (it was ~100% of their cost). A 50-stage motor stator that did not finish in 40 minutes and then solved to 84% of its volume now solves in about a minute within 0.3%. Manufacture gains contour operations \u2014 outside or inside along a closed polyline, with holding tabs \u2014 fed by a DXF outline import, a right-rail inspector that follows the job outline, and a single machine bar with an optional Terminal/G-code/Macros drawer in place of the old dock. Loon programs open directly, a DXF dropped on the app lands in Manufacture, launching by opening a file no longer spawns a second instance, and switching workspaces no longer resizes the window. The app also opts out of AppKit window restoration, which after a crash could block the next launch behind a system prompt or crash it outright.",
41737
+ features: [
41738
+ "app",
41739
+ "native",
41740
+ "cam",
41741
+ "kernel",
41742
+ "performance"
41743
+ ]
41744
+ },
41745
+ {
41746
+ id: "2026-09-17-coplanar-cap-unions-stay-analytic",
41747
+ version: "0.10.0",
41748
+ date: "2026-09-17",
41749
+ category: "fix",
41750
+ title: "Unions of flush prismatic parts stay analytic",
41751
+ summary: "Posts, tabs and bosses unioned into a body with shared top and bottom faces no longer double or drop the caps over their overlap; operand order no longer changes the result.",
41752
+ details: "A small coplanar face lying inside a larger one was judged coincident from one side only, so `post \u222A ring` kept both copies of the overlap while `ring \u222A post` was exact; the larger face now wins. Planar faces are no longer cut by full-width chords from faces that merely end flush on them, which scrambled classification once two such chords crossed (twelve posts into a ring lost 9% of their volume). A line crossing a notched face in several spans now cuts the span it was recorded on rather than always the first. The rana-60 stator goes from 105k triangles of mesh fallback to 11.7k analytic triangles at +0.06% of its reference volume, in under half the time.",
41753
+ features: [
41754
+ "kernel",
41755
+ "booleans"
41756
+ ]
41757
+ },
41758
+ {
41759
+ id: "2026-09-17-contour-cam-side-and-tabs",
41760
+ version: "0.10.0",
41761
+ date: "2026-09-17",
41762
+ category: "fix",
41763
+ title: "Inside contours cut inside; holding tabs hold",
41764
+ summary: "Inside contour toolpaths were offset outward, into the part. Tabs now survive every pass at their stated width, avoid notches and corners, and cut depth follows stock thickness.",
41765
+ features: [
41766
+ "cam",
41767
+ "native-app",
41768
+ "manufacture"
41769
+ ]
41770
+ },
41771
+ {
41772
+ id: "2026-09-16-native-app-hig-polish",
41773
+ version: "0.10.0",
41774
+ date: "2026-09-16",
41775
+ category: "feat",
41776
+ title: "Native Mac app: one design system, a real document app",
41777
+ summary: "The native app now has one panel surface, semantic type, named undo, a full menu bar with Settings, a declared .vcad document type, a reference grid and orientation triad, and remembers its layout.",
41778
+ details: "Three generations of shell code collapsed into one: every floating panel, eyebrow, key/value row, numeric field and selection highlight comes from a single design system that follows light and dark appearance, and roughly a dozen never-instantiated views are gone. The app behaves like a Mac document app: the bundle declares the .vcad type with an app and document icon, Save is atomic, Save As keeps the undo history, closing offers to save, and recents reach the Dock menu. Undo is named (Undo Extrude, Undo Move Part), the Edit menu has Select All, Delete, Rename, Hide and Isolate, the View menu has the workspace switcher and panel toggles, a Camera menu holds the standard views with \u23181\u20134 and Frame All on \u23180, and Settings (\u2318,) covers presentation, grid, sounds and haptics. No bare-letter shortcuts remain and \u21E7\u2318W no longer shadows Close All. The windowed viewport gains a millimetre reference grid and contact shadow plus an always-on orientation triad; workspace switches keep each workspace's camera; panel state and the active workspace persist across launches. Scrub fields accept locale decimal separators and \u2325/\u21E7 fine/coarse scrubbing. The intent bar can be undone as a whole instead of throwing the document away.",
41779
+ features: [
41780
+ "app",
41781
+ "native",
41782
+ "ux"
41783
+ ]
41784
+ },
41716
41785
  {
41717
41786
  id: "2026-09-09-release-0-10-0",
41718
41787
  version: "0.10.0",
@@ -84498,8 +84567,8 @@ var init_server3 = __esm({
84498
84567
  init_order_feed();
84499
84568
  init_animate();
84500
84569
  PKG_VERSION = (() => {
84501
- if ("0.10.0-main.87") {
84502
- return "0.10.0-main.87";
84570
+ if ("0.10.0-main.89") {
84571
+ return "0.10.0-main.89";
84503
84572
  }
84504
84573
  try {
84505
84574
  const req = createRequire2(import.meta.url);
@@ -84508,8 +84577,8 @@ var init_server3 = __esm({
84508
84577
  return "0.0.0";
84509
84578
  }
84510
84579
  })();
84511
- BUILD_SHA = "84f01fc54a7621565adbbcf27f3e0c8f5ce65df8";
84512
- BUILD_TIME = "2026-09-10T01:39:10.625Z";
84580
+ BUILD_SHA = "6131e39c56e1d09b46f7c94a67847908b9bd3795";
84581
+ BUILD_TIME = "2026-10-13T20:14:10.251Z";
84513
84582
  SHORT_SHA = BUILD_SHA === "unknown" ? "unknown" : BUILD_SHA.slice(0, 7);
84514
84583
  VERSION_WITH_BUILD = SHORT_SHA === "unknown" ? PKG_VERSION : `${PKG_VERSION}+${SHORT_SHA}`;
84515
84584
  INSTANCE_ID = randomUUID7().slice(0, 8);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vcad/mcp",
3
- "version": "0.10.0-main.87",
3
+ "version": "0.10.0-main.89",
4
4
  "description": "vcad MCP server — parametric CAD + PCB design tools for AI agents (self-contained: bundled server + kernel WASM)",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "homepage": "https://vcad.io",
21
21
  "vcadBuild": {
22
- "sha": "84f01fc54a7621565adbbcf27f3e0c8f5ce65df8",
23
- "builtAt": "2026-09-10T01:39:10.625Z"
22
+ "sha": "6131e39c56e1d09b46f7c94a67847908b9bd3795",
23
+ "builtAt": "2026-10-13T20:14:10.251Z"
24
24
  }
25
25
  }
Binary file