@vcad/mcp 0.9.4-main.41 → 0.9.4-main.43
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 +1 -1
- package/index.mjs +87 -6
- package/package.json +3 -3
- package/vcad_kernel_wasm_bg.wasm +0 -0
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
|
|
9
|
+
Built from b8688eaf89da55b654b320d07262e2b17de65d37 at 2026-07-26T15:17:55.143Z. Source: https://github.com/ecto/vcad
|
package/index.mjs
CHANGED
|
@@ -111,6 +111,7 @@ __export(vcad_kernel_wasm_exports, {
|
|
|
111
111
|
documentParameterGradient: () => documentParameterGradient,
|
|
112
112
|
documentToLoon: () => documentToLoon,
|
|
113
113
|
documentToLoonChecked: () => documentToLoonChecked,
|
|
114
|
+
documentToStepBuffer: () => documentToStepBuffer,
|
|
114
115
|
drawingSheetToPdf: () => drawingSheetToPdf,
|
|
115
116
|
ecadAirgapFluxDensity: () => ecadAirgapFluxDensity,
|
|
116
117
|
ecadAirgapSolve: () => ecadAirgapSolve,
|
|
@@ -179,6 +180,7 @@ __export(vcad_kernel_wasm_exports, {
|
|
|
179
180
|
exprParse: () => exprParse,
|
|
180
181
|
feaAnalyzeMesh: () => feaAnalyzeMesh,
|
|
181
182
|
feaCheckBeam: () => feaCheckBeam,
|
|
183
|
+
flattenSolidToSheetMetal: () => flattenSolidToSheetMetal,
|
|
182
184
|
generate3mf: () => generate3mf,
|
|
183
185
|
generate3mfWithGcode: () => generate3mfWithGcode,
|
|
184
186
|
generateGcode: () => generateGcode,
|
|
@@ -1126,6 +1128,17 @@ function documentToLoonChecked(doc_json) {
|
|
|
1126
1128
|
}
|
|
1127
1129
|
return takeFromExternrefTable0(ret[0]);
|
|
1128
1130
|
}
|
|
1131
|
+
function documentToStepBuffer(doc_json) {
|
|
1132
|
+
const ptr0 = passStringToWasm0(doc_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
1133
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1134
|
+
const ret = wasm.documentToStepBuffer(ptr0, len0);
|
|
1135
|
+
if (ret[3]) {
|
|
1136
|
+
throw takeFromExternrefTable0(ret[2]);
|
|
1137
|
+
}
|
|
1138
|
+
var v2 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
|
|
1139
|
+
wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
|
|
1140
|
+
return v2;
|
|
1141
|
+
}
|
|
1129
1142
|
function drawingSheetToPdf(spec_json) {
|
|
1130
1143
|
const ptr0 = passStringToWasm0(spec_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
1131
1144
|
const len0 = WASM_VECTOR_LEN;
|
|
@@ -1947,6 +1960,20 @@ function feaCheckBeam(case_json) {
|
|
|
1947
1960
|
}
|
|
1948
1961
|
return takeFromExternrefTable0(ret[0]);
|
|
1949
1962
|
}
|
|
1963
|
+
function flattenSolidToSheetMetal(request_json) {
|
|
1964
|
+
let deferred2_0;
|
|
1965
|
+
let deferred2_1;
|
|
1966
|
+
try {
|
|
1967
|
+
const ptr0 = passStringToWasm0(request_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
1968
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1969
|
+
const ret = wasm.flattenSolidToSheetMetal(ptr0, len0);
|
|
1970
|
+
deferred2_0 = ret[0];
|
|
1971
|
+
deferred2_1 = ret[1];
|
|
1972
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
1973
|
+
} finally {
|
|
1974
|
+
wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
|
|
1975
|
+
}
|
|
1976
|
+
}
|
|
1950
1977
|
function generate3mf(name, vertices, indices, settings_json) {
|
|
1951
1978
|
const ptr0 = passStringToWasm0(name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
1952
1979
|
const len0 = WASM_VECTOR_LEN;
|
|
@@ -8996,7 +9023,7 @@ function costSheetMetalChain(chain, kernel2, rates, quantity2 = 1) {
|
|
|
8996
9023
|
}
|
|
8997
9024
|
return { breakdown: parsed.breakdown, rates: parsed.rates };
|
|
8998
9025
|
}
|
|
8999
|
-
function
|
|
9026
|
+
function flattenSolidToSheetMetal2(mesh, kernel2, options = {}) {
|
|
9000
9027
|
if (!kernel2.flattenSolidToSheetMetal) {
|
|
9001
9028
|
throw new Error("kernel.flattenSolidToSheetMetal not available \u2014 rebuild @vcad/kernel-wasm");
|
|
9002
9029
|
}
|
|
@@ -12177,7 +12204,7 @@ var init_dist = __esm({
|
|
|
12177
12204
|
* the mechanical counterpart of `board_from_solid`. Throws when the solid
|
|
12178
12205
|
* is not constant-thickness sheet. */
|
|
12179
12206
|
flattenSolidToSheetMetal(mesh, options) {
|
|
12180
|
-
return
|
|
12207
|
+
return flattenSolidToSheetMetal2(mesh, this.kernel, options);
|
|
12181
12208
|
}
|
|
12182
12209
|
/** Compute a feasible bend sequence (outermost-first) for the
|
|
12183
12210
|
* sheet-metal part in `doc`. Returns `null` if there is none. */
|
|
@@ -41072,6 +41099,19 @@ var init_CHANGELOG = __esm({
|
|
|
41072
41099
|
"rendering"
|
|
41073
41100
|
]
|
|
41074
41101
|
},
|
|
41102
|
+
{
|
|
41103
|
+
id: "2026-07-26-raytrace-mesh-parts",
|
|
41104
|
+
version: "0.9.4",
|
|
41105
|
+
date: "2026-07-26",
|
|
41106
|
+
category: "fix",
|
|
41107
|
+
title: "Ray-traced renders no longer drop mesh parts",
|
|
41108
|
+
summary: "Mesh-backed parts (frozen topology-optimization results, imported STL/GLB) now ray trace as smooth-shaded triangles instead of being silently omitted from the image.",
|
|
41109
|
+
features: [
|
|
41110
|
+
"rendering",
|
|
41111
|
+
"raytrace",
|
|
41112
|
+
"mesh"
|
|
41113
|
+
]
|
|
41114
|
+
},
|
|
41075
41115
|
{
|
|
41076
41116
|
id: "2026-07-26-photoreal-path-tracer",
|
|
41077
41117
|
version: "0.9.4",
|
|
@@ -41144,6 +41184,34 @@ var init_CHANGELOG = __esm({
|
|
|
41144
41184
|
"export_cad"
|
|
41145
41185
|
]
|
|
41146
41186
|
},
|
|
41187
|
+
{
|
|
41188
|
+
id: "2026-07-26-isometric-handedness",
|
|
41189
|
+
version: "0.9.4",
|
|
41190
|
+
date: "2026-07-26",
|
|
41191
|
+
category: "fix",
|
|
41192
|
+
title: "Isometric renders are no longer mirrored",
|
|
41193
|
+
summary: "The default isometric view used a left-handed screen basis, so every static render was a mirror image of the app viewport; it now matches.",
|
|
41194
|
+
features: [
|
|
41195
|
+
"rendering",
|
|
41196
|
+
"drafting"
|
|
41197
|
+
],
|
|
41198
|
+
mcpTools: [
|
|
41199
|
+
"render_view"
|
|
41200
|
+
]
|
|
41201
|
+
},
|
|
41202
|
+
{
|
|
41203
|
+
id: "2026-07-26-hdri-environment-lighting",
|
|
41204
|
+
version: "0.9.4",
|
|
41205
|
+
date: "2026-07-26",
|
|
41206
|
+
category: "feat",
|
|
41207
|
+
title: "HDRI environment lighting for photoreal renders",
|
|
41208
|
+
summary: "vcad-render --photoreal gains --env (three built-in studio HDRIs or any lat-long .hdr file) and --env-rotation, importance-sampled as a third MIS strategy.",
|
|
41209
|
+
features: [
|
|
41210
|
+
"render",
|
|
41211
|
+
"photoreal",
|
|
41212
|
+
"lighting"
|
|
41213
|
+
]
|
|
41214
|
+
},
|
|
41147
41215
|
{
|
|
41148
41216
|
id: "2026-07-26-flat-pattern-from-solid",
|
|
41149
41217
|
version: "0.9.4",
|
|
@@ -41162,6 +41230,19 @@ var init_CHANGELOG = __esm({
|
|
|
41162
41230
|
"sheet_metal_cost"
|
|
41163
41231
|
]
|
|
41164
41232
|
},
|
|
41233
|
+
{
|
|
41234
|
+
id: "2026-07-26-fillet-corner-raytrace-hole",
|
|
41235
|
+
version: "0.9.4",
|
|
41236
|
+
date: "2026-07-26",
|
|
41237
|
+
category: "fix",
|
|
41238
|
+
title: "Fix holes at fillet corners in ray-traced renders",
|
|
41239
|
+
summary: "Ray-traced filleted parts showed a crescent-shaped hole at every rounded corner; the spherical corner blend's trim boundary collapsed at the sphere's pole and cut away half the patch.",
|
|
41240
|
+
features: [
|
|
41241
|
+
"fillet",
|
|
41242
|
+
"rendering",
|
|
41243
|
+
"raytrace"
|
|
41244
|
+
]
|
|
41245
|
+
},
|
|
41165
41246
|
{
|
|
41166
41247
|
id: "2026-07-26-fastener-forms",
|
|
41167
41248
|
version: "0.9.4",
|
|
@@ -80659,8 +80740,8 @@ var init_server3 = __esm({
|
|
|
80659
80740
|
init_order_feed();
|
|
80660
80741
|
init_animate();
|
|
80661
80742
|
PKG_VERSION = (() => {
|
|
80662
|
-
if ("0.9.4-main.
|
|
80663
|
-
return "0.9.4-main.
|
|
80743
|
+
if ("0.9.4-main.43") {
|
|
80744
|
+
return "0.9.4-main.43";
|
|
80664
80745
|
}
|
|
80665
80746
|
try {
|
|
80666
80747
|
const req = createRequire2(import.meta.url);
|
|
@@ -80669,8 +80750,8 @@ var init_server3 = __esm({
|
|
|
80669
80750
|
return "0.0.0";
|
|
80670
80751
|
}
|
|
80671
80752
|
})();
|
|
80672
|
-
BUILD_SHA = "
|
|
80673
|
-
BUILD_TIME = "2026-07-
|
|
80753
|
+
BUILD_SHA = "b8688eaf89da55b654b320d07262e2b17de65d37";
|
|
80754
|
+
BUILD_TIME = "2026-07-26T15:17:55.143Z";
|
|
80674
80755
|
SHORT_SHA = BUILD_SHA === "unknown" ? "unknown" : BUILD_SHA.slice(0, 7);
|
|
80675
80756
|
VERSION_WITH_BUILD = SHORT_SHA === "unknown" ? PKG_VERSION : `${PKG_VERSION}+${SHORT_SHA}`;
|
|
80676
80757
|
INSTANCE_ID = randomUUID6().slice(0, 8);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vcad/mcp",
|
|
3
|
-
"version": "0.9.4-main.
|
|
3
|
+
"version": "0.9.4-main.43",
|
|
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": "
|
|
23
|
-
"builtAt": "2026-07-
|
|
22
|
+
"sha": "b8688eaf89da55b654b320d07262e2b17de65d37",
|
|
23
|
+
"builtAt": "2026-07-26T15:17:55.143Z"
|
|
24
24
|
}
|
|
25
25
|
}
|
package/vcad_kernel_wasm_bg.wasm
CHANGED
|
Binary file
|