cad-mcp-server 0.1.0

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.
Files changed (208) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +111 -0
  3. package/THIRD_PARTY_NOTICES.md +20 -0
  4. package/dist/cad/compare.d.ts +31 -0
  5. package/dist/cad/compare.d.ts.map +1 -0
  6. package/dist/cad/compare.js +51 -0
  7. package/dist/cad/compare.js.map +1 -0
  8. package/dist/cad/model-store.d.ts +52 -0
  9. package/dist/cad/model-store.d.ts.map +1 -0
  10. package/dist/cad/model-store.js +227 -0
  11. package/dist/cad/model-store.js.map +1 -0
  12. package/dist/cad/query/edges.d.ts +6 -0
  13. package/dist/cad/query/edges.d.ts.map +1 -0
  14. package/dist/cad/query/edges.js +257 -0
  15. package/dist/cad/query/edges.js.map +1 -0
  16. package/dist/cad/query/entities.d.ts +4 -0
  17. package/dist/cad/query/entities.d.ts.map +1 -0
  18. package/dist/cad/query/entities.js +185 -0
  19. package/dist/cad/query/entities.js.map +1 -0
  20. package/dist/cad/query/faces.d.ts +6 -0
  21. package/dist/cad/query/faces.d.ts.map +1 -0
  22. package/dist/cad/query/faces.js +305 -0
  23. package/dist/cad/query/faces.js.map +1 -0
  24. package/dist/cad/query/pmi.d.ts +3 -0
  25. package/dist/cad/query/pmi.d.ts.map +1 -0
  26. package/dist/cad/query/pmi.js +141 -0
  27. package/dist/cad/query/pmi.js.map +1 -0
  28. package/dist/cad/query/shared.d.ts +74 -0
  29. package/dist/cad/query/shared.d.ts.map +1 -0
  30. package/dist/cad/query/shared.js +181 -0
  31. package/dist/cad/query/shared.js.map +1 -0
  32. package/dist/cad/schema-version.d.ts +2 -0
  33. package/dist/cad/schema-version.d.ts.map +1 -0
  34. package/dist/cad/schema-version.js +2 -0
  35. package/dist/cad/schema-version.js.map +1 -0
  36. package/dist/compare.d.ts +31 -0
  37. package/dist/compare.d.ts.map +1 -0
  38. package/dist/compare.js +51 -0
  39. package/dist/compare.js.map +1 -0
  40. package/dist/index.d.ts +17 -0
  41. package/dist/index.d.ts.map +1 -0
  42. package/dist/index.js +113 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/kernel/aag-utils.d.ts +7 -0
  45. package/dist/kernel/aag-utils.d.ts.map +1 -0
  46. package/dist/kernel/aag-utils.js +54 -0
  47. package/dist/kernel/aag-utils.js.map +1 -0
  48. package/dist/kernel/import.d.ts +4 -0
  49. package/dist/kernel/import.d.ts.map +1 -0
  50. package/dist/kernel/import.js +25 -0
  51. package/dist/kernel/import.js.map +1 -0
  52. package/dist/kernel/kernel.d.ts +3 -0
  53. package/dist/kernel/kernel.d.ts.map +1 -0
  54. package/dist/kernel/kernel.js +7 -0
  55. package/dist/kernel/kernel.js.map +1 -0
  56. package/dist/kernel/measure.d.ts +6 -0
  57. package/dist/kernel/measure.d.ts.map +1 -0
  58. package/dist/kernel/measure.js +23 -0
  59. package/dist/kernel/measure.js.map +1 -0
  60. package/dist/kernel/query-entities.d.ts +75 -0
  61. package/dist/kernel/query-entities.d.ts.map +1 -0
  62. package/dist/kernel/query-entities.js +190 -0
  63. package/dist/kernel/query-entities.js.map +1 -0
  64. package/dist/kernel/topology.d.ts +4 -0
  65. package/dist/kernel/topology.d.ts.map +1 -0
  66. package/dist/kernel/topology.js +48 -0
  67. package/dist/kernel/topology.js.map +1 -0
  68. package/dist/model-store.d.ts +52 -0
  69. package/dist/model-store.d.ts.map +1 -0
  70. package/dist/model-store.js +227 -0
  71. package/dist/model-store.js.map +1 -0
  72. package/dist/pmi/metadata.d.ts +15 -0
  73. package/dist/pmi/metadata.d.ts.map +1 -0
  74. package/dist/pmi/metadata.js +93 -0
  75. package/dist/pmi/metadata.js.map +1 -0
  76. package/dist/pmi/parser.d.ts +46 -0
  77. package/dist/pmi/parser.d.ts.map +1 -0
  78. package/dist/pmi/parser.js +400 -0
  79. package/dist/pmi/parser.js.map +1 -0
  80. package/dist/pmi/semantic-provider.d.ts +7 -0
  81. package/dist/pmi/semantic-provider.d.ts.map +1 -0
  82. package/dist/pmi/semantic-provider.js +96 -0
  83. package/dist/pmi/semantic-provider.js.map +1 -0
  84. package/dist/providers/brep.d.ts +39 -0
  85. package/dist/providers/brep.d.ts.map +1 -0
  86. package/dist/providers/brep.js +2 -0
  87. package/dist/providers/brep.js.map +1 -0
  88. package/dist/providers/lightweight-step/metadata.d.ts +15 -0
  89. package/dist/providers/lightweight-step/metadata.d.ts.map +1 -0
  90. package/dist/providers/lightweight-step/metadata.js +93 -0
  91. package/dist/providers/lightweight-step/metadata.js.map +1 -0
  92. package/dist/providers/lightweight-step/pmi-parser.d.ts +46 -0
  93. package/dist/providers/lightweight-step/pmi-parser.d.ts.map +1 -0
  94. package/dist/providers/lightweight-step/pmi-parser.js +400 -0
  95. package/dist/providers/lightweight-step/pmi-parser.js.map +1 -0
  96. package/dist/providers/lightweight-step/semantic-provider.d.ts +7 -0
  97. package/dist/providers/lightweight-step/semantic-provider.d.ts.map +1 -0
  98. package/dist/providers/lightweight-step/semantic-provider.js +96 -0
  99. package/dist/providers/lightweight-step/semantic-provider.js.map +1 -0
  100. package/dist/providers/occt-wasm/aag-utils.d.ts +7 -0
  101. package/dist/providers/occt-wasm/aag-utils.d.ts.map +1 -0
  102. package/dist/providers/occt-wasm/aag-utils.js +54 -0
  103. package/dist/providers/occt-wasm/aag-utils.js.map +1 -0
  104. package/dist/providers/occt-wasm/import.d.ts +4 -0
  105. package/dist/providers/occt-wasm/import.d.ts.map +1 -0
  106. package/dist/providers/occt-wasm/import.js +25 -0
  107. package/dist/providers/occt-wasm/import.js.map +1 -0
  108. package/dist/providers/occt-wasm/kernel.d.ts +3 -0
  109. package/dist/providers/occt-wasm/kernel.d.ts.map +1 -0
  110. package/dist/providers/occt-wasm/kernel.js +7 -0
  111. package/dist/providers/occt-wasm/kernel.js.map +1 -0
  112. package/dist/providers/occt-wasm/measure.d.ts +6 -0
  113. package/dist/providers/occt-wasm/measure.d.ts.map +1 -0
  114. package/dist/providers/occt-wasm/measure.js +23 -0
  115. package/dist/providers/occt-wasm/measure.js.map +1 -0
  116. package/dist/providers/occt-wasm/query-entities.d.ts +71 -0
  117. package/dist/providers/occt-wasm/query-entities.d.ts.map +1 -0
  118. package/dist/providers/occt-wasm/query-entities.js +177 -0
  119. package/dist/providers/occt-wasm/query-entities.js.map +1 -0
  120. package/dist/providers/occt-wasm/topology.d.ts +4 -0
  121. package/dist/providers/occt-wasm/topology.d.ts.map +1 -0
  122. package/dist/providers/occt-wasm/topology.js +48 -0
  123. package/dist/providers/occt-wasm/topology.js.map +1 -0
  124. package/dist/providers/schema.d.ts +50 -0
  125. package/dist/providers/schema.d.ts.map +1 -0
  126. package/dist/providers/schema.js +2 -0
  127. package/dist/providers/schema.js.map +1 -0
  128. package/dist/providers/semantic.d.ts +34 -0
  129. package/dist/providers/semantic.d.ts.map +1 -0
  130. package/dist/providers/semantic.js +2 -0
  131. package/dist/providers/semantic.js.map +1 -0
  132. package/dist/query/edges.d.ts +6 -0
  133. package/dist/query/edges.d.ts.map +1 -0
  134. package/dist/query/edges.js +257 -0
  135. package/dist/query/edges.js.map +1 -0
  136. package/dist/query/entities.d.ts +4 -0
  137. package/dist/query/entities.d.ts.map +1 -0
  138. package/dist/query/entities.js +203 -0
  139. package/dist/query/entities.js.map +1 -0
  140. package/dist/query/faces.d.ts +6 -0
  141. package/dist/query/faces.d.ts.map +1 -0
  142. package/dist/query/faces.js +309 -0
  143. package/dist/query/faces.js.map +1 -0
  144. package/dist/query/pmi.d.ts +3 -0
  145. package/dist/query/pmi.d.ts.map +1 -0
  146. package/dist/query/pmi.js +141 -0
  147. package/dist/query/pmi.js.map +1 -0
  148. package/dist/query/shared.d.ts +74 -0
  149. package/dist/query/shared.d.ts.map +1 -0
  150. package/dist/query/shared.js +181 -0
  151. package/dist/query/shared.js.map +1 -0
  152. package/dist/schema-version.d.ts +2 -0
  153. package/dist/schema-version.d.ts.map +1 -0
  154. package/dist/schema-version.js +2 -0
  155. package/dist/schema-version.js.map +1 -0
  156. package/dist/tools/shared.d.ts +11 -0
  157. package/dist/tools/shared.d.ts.map +1 -0
  158. package/dist/tools/shared.js +19 -0
  159. package/dist/tools/shared.js.map +1 -0
  160. package/dist/tools/step-tools.d.ts +758 -0
  161. package/dist/tools/step-tools.d.ts.map +1 -0
  162. package/dist/tools/step-tools.js +836 -0
  163. package/dist/tools/step-tools.js.map +1 -0
  164. package/dist/types/brep.d.ts +39 -0
  165. package/dist/types/brep.d.ts.map +1 -0
  166. package/dist/types/brep.js +2 -0
  167. package/dist/types/brep.js.map +1 -0
  168. package/dist/types/schema.d.ts +50 -0
  169. package/dist/types/schema.d.ts.map +1 -0
  170. package/dist/types/schema.js +2 -0
  171. package/dist/types/schema.js.map +1 -0
  172. package/dist/types/semantic.d.ts +34 -0
  173. package/dist/types/semantic.d.ts.map +1 -0
  174. package/dist/types/semantic.js +2 -0
  175. package/dist/types/semantic.js.map +1 -0
  176. package/dist/utils/errors.d.ts +7 -0
  177. package/dist/utils/errors.d.ts.map +1 -0
  178. package/dist/utils/errors.js +7 -0
  179. package/dist/utils/errors.js.map +1 -0
  180. package/dist/utils/ids.d.ts +2 -0
  181. package/dist/utils/ids.d.ts.map +1 -0
  182. package/dist/utils/ids.js +4 -0
  183. package/dist/utils/ids.js.map +1 -0
  184. package/dist/utils/numbers.d.ts +11 -0
  185. package/dist/utils/numbers.d.ts.map +1 -0
  186. package/dist/utils/numbers.js +15 -0
  187. package/dist/utils/numbers.js.map +1 -0
  188. package/dist/utils/vectors.d.ts +4 -0
  189. package/dist/utils/vectors.d.ts.map +1 -0
  190. package/dist/utils/vectors.js +14 -0
  191. package/dist/utils/vectors.js.map +1 -0
  192. package/docs/EXAMPLE_PROMPTS.md +61 -0
  193. package/node_modules/occt-wasm/dist/index.d.ts +303 -0
  194. package/node_modules/occt-wasm/dist/index.d.ts.map +1 -0
  195. package/node_modules/occt-wasm/dist/index.js +1125 -0
  196. package/node_modules/occt-wasm/dist/index.js.map +1 -0
  197. package/node_modules/occt-wasm/dist/occt-wasm.js +2 -0
  198. package/node_modules/occt-wasm/dist/occt-wasm.wasm +0 -0
  199. package/node_modules/occt-wasm/dist/raw-types.d.ts +229 -0
  200. package/node_modules/occt-wasm/dist/raw-types.d.ts.map +1 -0
  201. package/node_modules/occt-wasm/dist/raw-types.js +8 -0
  202. package/node_modules/occt-wasm/dist/raw-types.js.map +1 -0
  203. package/node_modules/occt-wasm/dist/types.d.ts +223 -0
  204. package/node_modules/occt-wasm/dist/types.d.ts.map +1 -0
  205. package/node_modules/occt-wasm/dist/types.js +129 -0
  206. package/node_modules/occt-wasm/dist/types.js.map +1 -0
  207. package/node_modules/occt-wasm/package.json +44 -0
  208. package/package.json +102 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step-tools.js","sourceRoot":"","sources":["../../src/tools/step-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { BoundingBox, Dimensions, ProviderInfo, Provenance, UnitSystem, Warning } from './schema.js';
2
+ export interface BRepBody {
3
+ id: string;
4
+ index: number;
5
+ boundingBox: BoundingBox;
6
+ dimensions: Dimensions;
7
+ volume: number;
8
+ surfaceArea: number;
9
+ }
10
+ export interface BRepEdgeStatistics {
11
+ count: number;
12
+ totalLength: number;
13
+ averageLength: number;
14
+ minLength: number;
15
+ maxLength: number;
16
+ byCurveType: Record<string, number>;
17
+ byLengthRange: Record<'tiny' | 'small' | 'medium' | 'large' | 'xlarge', number>;
18
+ }
19
+ export interface BRepHealth {
20
+ isValid?: boolean;
21
+ warnings: Warning[];
22
+ }
23
+ export interface BRepModel {
24
+ provider: ProviderInfo;
25
+ filePath: string;
26
+ units: UnitSystem;
27
+ boundingBox: BoundingBox;
28
+ dimensions: Dimensions;
29
+ volume: number;
30
+ surfaceArea: number;
31
+ bodyCount: number;
32
+ shapeType: 'box' | 'cylindrical' | 'complex';
33
+ faceCount?: number;
34
+ edgeStatistics?: BRepEdgeStatistics;
35
+ bodies: BRepBody[];
36
+ health: BRepHealth;
37
+ provenance: Provenance[];
38
+ }
39
+ //# sourceMappingURL=brep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brep.d.ts","sourceRoot":"","sources":["../../src/types/brep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,UAAU,EACV,UAAU,EACV,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAC;CACjF;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,KAAK,GAAG,aAAa,GAAG,SAAS,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,UAAU,EAAE,CAAC;CAC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=brep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brep.js","sourceRoot":"","sources":["../../src/types/brep.ts"],"names":[],"mappings":""}
@@ -0,0 +1,50 @@
1
+ export interface Point3D {
2
+ x: number;
3
+ y: number;
4
+ z: number;
5
+ }
6
+ export interface BoundingBox {
7
+ min: Point3D;
8
+ max: Point3D;
9
+ }
10
+ export interface Dimensions {
11
+ width: number;
12
+ height: number;
13
+ depth: number;
14
+ }
15
+ export interface UnitSystem {
16
+ length: string;
17
+ area: string;
18
+ volume: string;
19
+ }
20
+ export interface ProviderInfo {
21
+ name: string;
22
+ capabilities: string[];
23
+ limitations: string[];
24
+ }
25
+ export interface Provenance {
26
+ provider: string;
27
+ sourceId?: string;
28
+ method: 'measured' | 'derived' | 'heuristic' | 'ml' | 'semantic';
29
+ }
30
+ export interface Evidence {
31
+ confidence: number;
32
+ sourceIds: string[];
33
+ provider: string;
34
+ method: Provenance['method'];
35
+ explanation: string[];
36
+ limitations: string[];
37
+ }
38
+ export interface Warning {
39
+ id: string;
40
+ type: string;
41
+ severity: 'info' | 'low' | 'medium' | 'high';
42
+ message: string;
43
+ sourceIds: string[];
44
+ evidence?: Evidence;
45
+ }
46
+ export interface Limitation {
47
+ source: string;
48
+ message: string;
49
+ }
50
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/types/schema.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,GAAG,UAAU,CAAC;CAClE;AAED,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/types/schema.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import type { Limitation, ProviderInfo, Provenance, UnitSystem } from './schema.js';
2
+ export interface PmiSummary {
3
+ hasPmi: boolean;
4
+ hasGdt: boolean;
5
+ hasDimensions: boolean;
6
+ detectedKeywords: string[];
7
+ semanticStatus: 'not_detected' | 'keyword_detected' | 'unknown';
8
+ }
9
+ export interface SemanticFact {
10
+ id: string;
11
+ type: string;
12
+ value: string | number | boolean;
13
+ source: string;
14
+ }
15
+ export interface SemanticModel {
16
+ provider: ProviderInfo;
17
+ filePath: string;
18
+ schema?: string;
19
+ applicationProtocol?: string;
20
+ units?: UnitSystem;
21
+ productNames: string[];
22
+ productCount: number;
23
+ authoringSystem?: string;
24
+ organizationName?: string;
25
+ hasAssembly: boolean;
26
+ toleranceEntityCount: number;
27
+ shapeRepresentationCount: number;
28
+ pmi: PmiSummary;
29
+ entityCounts: Record<string, number>;
30
+ facts: SemanticFact[];
31
+ limitations: Limitation[];
32
+ provenance: Provenance[];
33
+ }
34
+ //# sourceMappingURL=semantic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/types/semantic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEpF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,EAAE,cAAc,GAAG,kBAAkB,GAAG,SAAS,CAAC;CACjE;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,wBAAwB,EAAE,MAAM,CAAC;IACjC,GAAG,EAAE,UAAU,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,UAAU,EAAE,UAAU,EAAE,CAAC;CAC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=semantic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic.js","sourceRoot":"","sources":["../../src/types/semantic.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export type AnalysisErrorType = 'file_not_found' | 'invalid_format' | 'invalid_input' | 'unknown';
2
+ export interface AnalysisError {
3
+ type: AnalysisErrorType;
4
+ message: string;
5
+ }
6
+ export declare function unknownError(error: unknown, action: string): AnalysisError;
7
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,eAAe,GAAG,SAAS,CAAC;AAElG,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa,CAK1E"}
@@ -0,0 +1,7 @@
1
+ export function unknownError(error, action) {
2
+ return {
3
+ type: 'unknown',
4
+ message: `${action} failed: ${error instanceof Error ? error.message : String(error)}`,
5
+ };
6
+ }
7
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,YAAY,CAAC,KAAc,EAAE,MAAc;IACzD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,GAAG,MAAM,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;KACvF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function makeId(prefix: string, index: number | string): string;
2
+ //# sourceMappingURL=ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/utils/ids.ts"],"names":[],"mappings":"AAAA,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAErE"}
@@ -0,0 +1,4 @@
1
+ export function makeId(prefix, index) {
2
+ return `${prefix}:${index}`;
3
+ }
4
+ //# sourceMappingURL=ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.js","sourceRoot":"","sources":["../../src/utils/ids.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,MAAM,CAAC,MAAc,EAAE,KAAsB;IAC3D,OAAO,GAAG,MAAM,IAAI,KAAK,EAAE,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface NumericStats {
2
+ count: number;
3
+ total: number;
4
+ average: number;
5
+ min: number;
6
+ max: number;
7
+ }
8
+ export declare function emptyStats(): NumericStats;
9
+ export declare function bucketLength(length: number): 'tiny' | 'small' | 'medium' | 'large' | 'xlarge';
10
+ export {};
11
+ //# sourceMappingURL=numbers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numbers.d.ts","sourceRoot":"","sources":["../../src/utils/numbers.ts"],"names":[],"mappings":"AAAA,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,UAAU,IAAI,YAAY,CAEzC;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAM7F"}
@@ -0,0 +1,15 @@
1
+ export function emptyStats() {
2
+ return { count: 0, total: 0, average: 0, min: 0, max: 0 };
3
+ }
4
+ export function bucketLength(length) {
5
+ if (length < 1)
6
+ return 'tiny';
7
+ if (length < 5)
8
+ return 'small';
9
+ if (length < 20)
10
+ return 'medium';
11
+ if (length < 100)
12
+ return 'large';
13
+ return 'xlarge';
14
+ }
15
+ //# sourceMappingURL=numbers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numbers.js","sourceRoot":"","sources":["../../src/utils/numbers.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,UAAU;IACxB,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IAC9B,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC;IAC/B,IAAI,MAAM,GAAG,EAAE;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,MAAM,GAAG,GAAG;QAAE,OAAO,OAAO,CAAC;IACjC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function dotProduct(v1: number[], v2: number[]): number;
2
+ export declare function normalizeVector(v: number[]): [number, number, number];
3
+ export declare function angleDegreesNormalized(u1: number[], u2: number[]): number;
4
+ //# sourceMappingURL=vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectors.d.ts","sourceRoot":"","sources":["../../src/utils/vectors.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,CAE7D;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAIrE;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,CAGzE"}
@@ -0,0 +1,14 @@
1
+ export function dotProduct(v1, v2) {
2
+ return v1[0] * v2[0] + v1[1] * v2[1] + v1[2] * v2[2];
3
+ }
4
+ export function normalizeVector(v) {
5
+ const len = Math.sqrt(v[0] * v[0] + v[1] * v[1] + v[2] * v[2]);
6
+ if (len === 0)
7
+ return [0, 0, 0];
8
+ return [v[0] / len, v[1] / len, v[2] / len];
9
+ }
10
+ export function angleDegreesNormalized(u1, u2) {
11
+ const dot = Math.max(-1, Math.min(1, dotProduct(u1, u2)));
12
+ return (Math.acos(dot) * 180) / Math.PI;
13
+ }
14
+ //# sourceMappingURL=vectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectors.js","sourceRoot":"","sources":["../../src/utils/vectors.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,EAAY,EAAE,EAAY;IACnD,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,CAAW;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EAAY,EAAE,EAAY;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,61 @@
1
+ # Example Prompts
2
+
3
+ These prompts are designed for mechanical engineers using CAD MCP Server through an AI assistant. They ask for engineering work products, not raw geometry dumps.
4
+
5
+ ## Design Review
6
+
7
+ ```text
8
+ Review VortexParts.step like a mechanical lead before release. What are the top design or manufacturing risks I should resolve before sending this out?
9
+ ```
10
+
11
+ ```text
12
+ Find opportunities to reduce manufacturing cost without changing the product intent. Focus on geometry that increases machining time, inspection burden, or supplier risk.
13
+ ```
14
+
15
+ ## Manufacturing Planning
16
+
17
+ ```text
18
+ Assume I want to CNC machine these parts. Build a first-pass manufacturing plan: likely setups, drilling directions, tooling constraints, and the features that will drive cost.
19
+ ```
20
+
21
+ ```text
22
+ Review this part for injection molding feasibility using a simple two-part mold assumption. Where are the likely undercuts, side-action needs, or geometry that should be redesigned?
23
+ ```
24
+
25
+ ```text
26
+ Can these parts be printed on a 200 x 200 x 300 mm printer? Tell me what fits, what probably needs splitting or reorientation, and what geometry may be fragile or hard to print.
27
+ ```
28
+
29
+ ## Supplier Handoff
30
+
31
+ ```text
32
+ Prepare an RFQ summary for a machine shop from VortexParts.step: part count, approximate size envelope, complexity drivers, tolerance/PMI availability, and questions the supplier will likely ask.
33
+ ```
34
+
35
+ ```text
36
+ Create a first-pass inspection plan from the STEP file. What should QC measure, which features are likely critical, and what information is missing from the model?
37
+ ```
38
+
39
+ ## Revision And Fit Checks
40
+
41
+ ```text
42
+ Compare VortexParts_revA.step and VortexParts_revB.step as an ECO review. What changed, what risks does the change introduce, and what should be rechecked?
43
+ ```
44
+
45
+ ```text
46
+ Audit the model for bearing and shaft interfaces. Identify likely bores, rod channels, and bearing seats, then tell me what dimensions or tolerances need verification before ordering hardware.
47
+ ```
48
+
49
+ ## Assembly Review
50
+
51
+ ```text
52
+ Review the assembly for practical assembly/service issues. Look for repeated fastener or bearing features, access directions, fragile features, and anything that could make assembly error-prone.
53
+ ```
54
+
55
+ ## Good Assistant Behavior
56
+
57
+ - Use CAD MCP tools to gather measured facts before making recommendations.
58
+ - Separate measured facts, assumptions, and engineering recommendations.
59
+ - Cite specific model evidence such as dimensions, radii, body IDs, face/edge groups, PMI presence, or revision deltas.
60
+ - Say when the STEP file lacks material, tolerance, process, quantity, or authoritative PMI information.
61
+ - Do not invent feature-tree intent, material, fit class, tolerance values, or manufacturability certification.