solidworks-mcp-server 3.0.8 → 3.1.3
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/CHANGELOG.md +175 -98
- package/LICENSE +20 -20
- package/README.md +195 -423
- package/dist/adapters/circuit-breaker.d.ts +84 -0
- package/dist/adapters/circuit-breaker.d.ts.map +1 -0
- package/dist/adapters/circuit-breaker.js +228 -0
- package/dist/adapters/circuit-breaker.js.map +1 -0
- package/dist/adapters/connection-pool.d.ts +83 -0
- package/dist/adapters/connection-pool.d.ts.map +1 -0
- package/dist/adapters/connection-pool.js +282 -0
- package/dist/adapters/connection-pool.js.map +1 -0
- package/dist/adapters/edge-adapter.d.ts +43 -0
- package/dist/adapters/edge-adapter.d.ts.map +1 -0
- package/dist/adapters/edge-adapter.js +417 -0
- package/dist/adapters/edge-adapter.js.map +1 -0
- package/dist/adapters/factory.d.ts +60 -0
- package/dist/adapters/factory.d.ts.map +1 -0
- package/dist/adapters/factory.js +212 -0
- package/dist/adapters/factory.js.map +1 -0
- package/dist/adapters/feature-complexity-analyzer.d.ts +102 -0
- package/dist/adapters/feature-complexity-analyzer.d.ts.map +1 -0
- package/dist/adapters/feature-complexity-analyzer.js +322 -0
- package/dist/adapters/feature-complexity-analyzer.js.map +1 -0
- package/dist/adapters/macro-generator.d.ts +30 -0
- package/dist/adapters/macro-generator.d.ts.map +1 -0
- package/dist/adapters/macro-generator.js +524 -0
- package/dist/adapters/macro-generator.js.map +1 -0
- package/dist/adapters/mock-solidworks-adapter.d.ts +92 -0
- package/dist/adapters/mock-solidworks-adapter.d.ts.map +1 -0
- package/dist/adapters/mock-solidworks-adapter.js +367 -0
- package/dist/adapters/mock-solidworks-adapter.js.map +1 -0
- package/dist/adapters/types.d.ts +376 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +261 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/adapters/winax-adapter-enhanced.d.ts +55 -0
- package/dist/adapters/winax-adapter-enhanced.d.ts.map +1 -0
- package/dist/adapters/winax-adapter-enhanced.js +601 -0
- package/dist/adapters/winax-adapter-enhanced.js.map +1 -0
- package/dist/adapters/winax-adapter.d.ts +55 -0
- package/dist/adapters/winax-adapter.d.ts.map +1 -0
- package/dist/adapters/winax-adapter.js +667 -0
- package/dist/adapters/winax-adapter.js.map +1 -0
- package/dist/api/stainless-api.d.ts +29 -0
- package/dist/api/stainless-api.d.ts.map +1 -0
- package/dist/api/stainless-api.js +408 -0
- package/dist/api/stainless-api.js.map +1 -0
- package/dist/cache/manager.d.ts.map +1 -1
- package/dist/cache/manager.js +4 -3
- package/dist/cache/manager.js.map +1 -1
- package/dist/core/interfaces/core-abstractions.d.ts.map +1 -1
- package/dist/core/interfaces/core-abstractions.js.map +1 -1
- package/dist/db/connection.js +4 -4
- package/dist/db/connection.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +86 -79
- package/dist/index.js.map +1 -1
- package/dist/knowledge/chromadb.d.ts.map +1 -1
- package/dist/knowledge/chromadb.js +5 -3
- package/dist/knowledge/chromadb.js.map +1 -1
- package/dist/macro/recorder.d.ts +1 -1
- package/dist/macro/recorder.d.ts.map +1 -1
- package/dist/macro/recorder.js +10 -10
- package/dist/macro/recorder.js.map +1 -1
- package/dist/resources/base.js +10 -10
- package/dist/resources/base.js.map +1 -1
- package/dist/resources/design-table.d.ts +10 -12
- package/dist/resources/design-table.d.ts.map +1 -1
- package/dist/resources/design-table.js +42 -39
- package/dist/resources/design-table.js.map +1 -1
- package/dist/resources/pdm.d.ts +44 -45
- package/dist/resources/pdm.d.ts.map +1 -1
- package/dist/resources/pdm.js +118 -79
- package/dist/resources/pdm.js.map +1 -1
- package/dist/resources/registry.d.ts +1 -1
- package/dist/resources/registry.d.ts.map +1 -1
- package/dist/resources/registry.js +1 -1
- package/dist/shared/constants/solidworks-constants.d.ts.map +1 -1
- package/dist/shared/constants/solidworks-constants.js +9 -9
- package/dist/shared/constants/solidworks-constants.js.map +1 -1
- package/dist/solidworks/api.d.ts +8 -6
- package/dist/solidworks/api.d.ts.map +1 -1
- package/dist/solidworks/api.js +614 -188
- package/dist/solidworks/api.js.map +1 -1
- package/dist/state/store.d.ts +1 -1
- package/dist/state/store.d.ts.map +1 -1
- package/dist/state/store.js +14 -14
- package/dist/state/store.js.map +1 -1
- package/dist/tools/analysis.d.ts +12 -2
- package/dist/tools/analysis.d.ts.map +1 -1
- package/dist/tools/analysis.js +141 -31
- package/dist/tools/analysis.js.map +1 -1
- package/dist/tools/diagnostics.d.ts +1 -1
- package/dist/tools/diagnostics.d.ts.map +1 -1
- package/dist/tools/diagnostics.js +2 -2
- package/dist/tools/diagnostics.js.map +1 -1
- package/dist/tools/drawing.d.ts +2 -2
- package/dist/tools/drawing.d.ts.map +1 -1
- package/dist/tools/drawing.js +94 -10
- package/dist/tools/drawing.js.map +1 -1
- package/dist/tools/enhanced-drawing.d.ts +1 -1
- package/dist/tools/enhanced-drawing.d.ts.map +1 -1
- package/dist/tools/enhanced-drawing.js +10 -13
- package/dist/tools/enhanced-drawing.js.map +1 -1
- package/dist/tools/export.d.ts +1 -1
- package/dist/tools/export.d.ts.map +1 -1
- package/dist/tools/export.js +88 -14
- package/dist/tools/export.js.map +1 -1
- package/dist/tools/extrusion-helper.d.ts +15 -0
- package/dist/tools/extrusion-helper.d.ts.map +1 -0
- package/dist/tools/extrusion-helper.js +61 -0
- package/dist/tools/extrusion-helper.js.map +1 -0
- package/dist/tools/macro-security.d.ts +2 -2
- package/dist/tools/macro-security.d.ts.map +1 -1
- package/dist/tools/macro-security.js +2 -2
- package/dist/tools/macro-security.js.map +1 -1
- package/dist/tools/modeling.d.ts +2 -2
- package/dist/tools/modeling.d.ts.map +1 -1
- package/dist/tools/modeling.js +6 -6
- package/dist/tools/modeling.js.map +1 -1
- package/dist/tools/native-macro.d.ts +1 -1
- package/dist/tools/native-macro.d.ts.map +1 -1
- package/dist/tools/native-macro.js +246 -239
- package/dist/tools/native-macro.js.map +1 -1
- package/dist/tools/sketch.d.ts +28 -28
- package/dist/tools/sketch.d.ts.map +1 -1
- package/dist/tools/sketch.js +202 -136
- package/dist/tools/sketch.js.map +1 -1
- package/dist/tools/template-manager.d.ts +5 -5
- package/dist/tools/template-manager.d.ts.map +1 -1
- package/dist/tools/template-manager.js +66 -65
- package/dist/tools/template-manager.js.map +1 -1
- package/dist/tools/vba-advanced.d.ts +10 -10
- package/dist/tools/vba-advanced.d.ts.map +1 -1
- package/dist/tools/vba-advanced.js +791 -708
- package/dist/tools/vba-advanced.js.map +1 -1
- package/dist/tools/vba-assembly.d.ts +10 -10
- package/dist/tools/vba-assembly.d.ts.map +1 -1
- package/dist/tools/vba-assembly.js +562 -500
- package/dist/tools/vba-assembly.js.map +1 -1
- package/dist/tools/vba-drawing.d.ts +12 -12
- package/dist/tools/vba-drawing.d.ts.map +1 -1
- package/dist/tools/vba-drawing.js +681 -572
- package/dist/tools/vba-drawing.js.map +1 -1
- package/dist/tools/vba-file-management.d.ts +12 -12
- package/dist/tools/vba-file-management.d.ts.map +1 -1
- package/dist/tools/vba-file-management.js +662 -589
- package/dist/tools/vba-file-management.js.map +1 -1
- package/dist/tools/vba-part.d.ts +10 -10
- package/dist/tools/vba-part.d.ts.map +1 -1
- package/dist/tools/vba-part.js +484 -426
- package/dist/tools/vba-part.js.map +1 -1
- package/dist/tools/vba.d.ts +361 -361
- package/dist/tools/vba.d.ts.map +1 -1
- package/dist/tools/vba.js +67 -81
- package/dist/tools/vba.js.map +1 -1
- package/dist/utils/config.js +2 -2
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/environment.d.ts +243 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +207 -0
- package/dist/utils/environment.js.map +1 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +6 -6
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/solidworks-config.d.ts +39 -0
- package/dist/utils/solidworks-config.d.ts.map +1 -0
- package/dist/utils/solidworks-config.js +156 -0
- package/dist/utils/solidworks-config.js.map +1 -0
- package/package.json +84 -84
- package/scripts/setup.js +70 -70
- package/dist/application/services/command-bus.d.ts +0 -39
- package/dist/application/services/command-bus.d.ts.map +0 -1
- package/dist/application/services/command-bus.js +0 -88
- package/dist/application/services/command-bus.js.map +0 -1
- package/dist/application/services/event-bus.d.ts +0 -31
- package/dist/application/services/event-bus.d.ts.map +0 -1
- package/dist/application/services/event-bus.js +0 -83
- package/dist/application/services/event-bus.js.map +0 -1
- package/dist/application/services/query-bus.d.ts +0 -30
- package/dist/application/services/query-bus.d.ts.map +0 -1
- package/dist/application/services/query-bus.js +0 -59
- package/dist/application/services/query-bus.js.map +0 -1
- package/dist/application/services/tool-registry.d.ts +0 -53
- package/dist/application/services/tool-registry.d.ts.map +0 -1
- package/dist/application/services/tool-registry.js +0 -81
- package/dist/application/services/tool-registry.js.map +0 -1
- package/dist/application/use-cases/analysis/index.d.ts +0 -13
- package/dist/application/use-cases/analysis/index.d.ts.map +0 -1
- package/dist/application/use-cases/analysis/index.js +0 -17
- package/dist/application/use-cases/analysis/index.js.map +0 -1
- package/dist/application/use-cases/drawing/index.d.ts +0 -13
- package/dist/application/use-cases/drawing/index.d.ts.map +0 -1
- package/dist/application/use-cases/drawing/index.js +0 -17
- package/dist/application/use-cases/drawing/index.js.map +0 -1
- package/dist/application/use-cases/export/index.d.ts +0 -13
- package/dist/application/use-cases/export/index.d.ts.map +0 -1
- package/dist/application/use-cases/export/index.js +0 -17
- package/dist/application/use-cases/export/index.js.map +0 -1
- package/dist/application/use-cases/macro/index.d.ts +0 -13
- package/dist/application/use-cases/macro/index.d.ts.map +0 -1
- package/dist/application/use-cases/macro/index.js +0 -17
- package/dist/application/use-cases/macro/index.js.map +0 -1
- package/dist/application/use-cases/modeling/index.d.ts +0 -56
- package/dist/application/use-cases/modeling/index.d.ts.map +0 -1
- package/dist/application/use-cases/modeling/index.js +0 -385
- package/dist/application/use-cases/modeling/index.js.map +0 -1
- package/dist/index.refactored.d.ts +0 -7
- package/dist/index.refactored.d.ts.map +0 -1
- package/dist/index.refactored.js +0 -254
- package/dist/index.refactored.js.map +0 -1
- package/dist/infrastructure/config/configuration-manager.d.ts +0 -381
- package/dist/infrastructure/config/configuration-manager.d.ts.map +0 -1
- package/dist/infrastructure/config/configuration-manager.js +0 -566
- package/dist/infrastructure/config/configuration-manager.js.map +0 -1
- package/dist/infrastructure/container/service-locator.d.ts +0 -14
- package/dist/infrastructure/container/service-locator.d.ts.map +0 -1
- package/dist/infrastructure/container/service-locator.js +0 -38
- package/dist/infrastructure/container/service-locator.js.map +0 -1
- package/dist/infrastructure/logging/logger.d.ts +0 -24
- package/dist/infrastructure/logging/logger.d.ts.map +0 -1
- package/dist/infrastructure/logging/logger.js +0 -65
- package/dist/infrastructure/logging/logger.js.map +0 -1
- package/dist/infrastructure/solidworks/solidworks-adapter.d.ts +0 -43
- package/dist/infrastructure/solidworks/solidworks-adapter.d.ts.map +0 -1
- package/dist/infrastructure/solidworks/solidworks-adapter.js +0 -527
- package/dist/infrastructure/solidworks/solidworks-adapter.js.map +0 -1
- package/dist/presentation/mcp/request-handler.d.ts +0 -41
- package/dist/presentation/mcp/request-handler.d.ts.map +0 -1
- package/dist/presentation/mcp/request-handler.js +0 -100
- package/dist/presentation/mcp/request-handler.js.map +0 -1
- package/dist/presentation/transformers/error-transformer.d.ts +0 -16
- package/dist/presentation/transformers/error-transformer.d.ts.map +0 -1
- package/dist/presentation/transformers/error-transformer.js +0 -44
- package/dist/presentation/transformers/error-transformer.js.map +0 -1
- package/dist/presentation/transformers/response-transformer.d.ts +0 -24
- package/dist/presentation/transformers/response-transformer.d.ts.map +0 -1
- package/dist/presentation/transformers/response-transformer.js +0 -102
- package/dist/presentation/transformers/response-transformer.js.map +0 -1
- package/dist/tools/drawing-analysis.d.ts +0 -9
- package/dist/tools/drawing-analysis.d.ts.map +0 -1
- package/dist/tools/drawing-analysis.js +0 -239
- package/dist/tools/drawing-analysis.js.map +0 -1
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment Configuration Management
|
|
3
|
+
*
|
|
4
|
+
* Centralized configuration from environment variables with validation and defaults.
|
|
5
|
+
* Supports both production and development/testing scenarios.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
/**
|
|
9
|
+
* Configuration schema with validation
|
|
10
|
+
*/
|
|
11
|
+
const EnvironmentSchema = z.object({
|
|
12
|
+
// SolidWorks settings
|
|
13
|
+
solidworks: z.object({
|
|
14
|
+
path: z.string().optional(),
|
|
15
|
+
version: z.string().default('2024'),
|
|
16
|
+
useMock: z.boolean().default(false),
|
|
17
|
+
}),
|
|
18
|
+
// Mock configuration
|
|
19
|
+
mock: z.object({
|
|
20
|
+
simulateErrors: z.boolean().default(false),
|
|
21
|
+
failOperations: z.boolean().default(false),
|
|
22
|
+
delayMs: z.number().min(0).default(0),
|
|
23
|
+
}),
|
|
24
|
+
// Feature flags
|
|
25
|
+
features: z.object({
|
|
26
|
+
macroRecording: z.boolean().default(true),
|
|
27
|
+
pdm: z.boolean().default(false),
|
|
28
|
+
pdmVault: z.string().optional(),
|
|
29
|
+
}),
|
|
30
|
+
// Database
|
|
31
|
+
database: z.object({
|
|
32
|
+
sqlConnection: z.string().optional(),
|
|
33
|
+
pgConnection: z.string().optional(),
|
|
34
|
+
}),
|
|
35
|
+
// Logging
|
|
36
|
+
logging: z.object({
|
|
37
|
+
level: z.enum(['debug', 'info', 'warn', 'error']).default('info'),
|
|
38
|
+
file: z.string().optional(),
|
|
39
|
+
}),
|
|
40
|
+
// State management
|
|
41
|
+
state: z.object({
|
|
42
|
+
file: z.string().default('./data/state.json'),
|
|
43
|
+
autoSaveInterval: z.number().default(60000),
|
|
44
|
+
}),
|
|
45
|
+
// Performance
|
|
46
|
+
performance: z.object({
|
|
47
|
+
enableConnectionPool: z.boolean().default(false),
|
|
48
|
+
connectionPoolMaxSize: z.number().default(5),
|
|
49
|
+
enableCircuitBreaker: z.boolean().default(false),
|
|
50
|
+
circuitBreakerThreshold: z.number().default(5),
|
|
51
|
+
}),
|
|
52
|
+
// Templates
|
|
53
|
+
templates: z.object({
|
|
54
|
+
part: z.string().optional(),
|
|
55
|
+
assembly: z.string().optional(),
|
|
56
|
+
drawing: z.string().optional(),
|
|
57
|
+
}),
|
|
58
|
+
// Development
|
|
59
|
+
dev: z.object({
|
|
60
|
+
mode: z.boolean().default(false),
|
|
61
|
+
port: z.number().optional(),
|
|
62
|
+
}),
|
|
63
|
+
});
|
|
64
|
+
/**
|
|
65
|
+
* Parse environment variables into typed configuration
|
|
66
|
+
*/
|
|
67
|
+
export function loadEnvironment() {
|
|
68
|
+
const raw = {
|
|
69
|
+
solidworks: {
|
|
70
|
+
path: process.env.SOLIDWORKS_PATH,
|
|
71
|
+
version: process.env.SOLIDWORKS_VERSION || '2024',
|
|
72
|
+
useMock: process.env.USE_MOCK_SOLIDWORKS === 'true',
|
|
73
|
+
},
|
|
74
|
+
mock: {
|
|
75
|
+
simulateErrors: process.env.MOCK_SIMULATE_ERRORS === 'true',
|
|
76
|
+
failOperations: process.env.MOCK_FAIL_OPERATIONS === 'true',
|
|
77
|
+
delayMs: parseInt(process.env.MOCK_DELAY_MS || '0', 10),
|
|
78
|
+
},
|
|
79
|
+
features: {
|
|
80
|
+
macroRecording: process.env.ENABLE_MACRO_RECORDING !== 'false',
|
|
81
|
+
pdm: process.env.ENABLE_PDM === 'true',
|
|
82
|
+
pdmVault: process.env.PDM_VAULT,
|
|
83
|
+
},
|
|
84
|
+
database: {
|
|
85
|
+
sqlConnection: process.env.SQL_CONNECTION,
|
|
86
|
+
pgConnection: process.env.PG_CONNECTION,
|
|
87
|
+
},
|
|
88
|
+
logging: {
|
|
89
|
+
level: (process.env.LOG_LEVEL || 'info'),
|
|
90
|
+
file: process.env.LOG_FILE,
|
|
91
|
+
},
|
|
92
|
+
state: {
|
|
93
|
+
file: process.env.STATE_FILE || './data/state.json',
|
|
94
|
+
autoSaveInterval: parseInt(process.env.STATE_AUTO_SAVE_INTERVAL || '60000', 10),
|
|
95
|
+
},
|
|
96
|
+
performance: {
|
|
97
|
+
enableConnectionPool: process.env.ENABLE_CONNECTION_POOL === 'true',
|
|
98
|
+
connectionPoolMaxSize: parseInt(process.env.CONNECTION_POOL_MAX_SIZE || '5', 10),
|
|
99
|
+
enableCircuitBreaker: process.env.ENABLE_CIRCUIT_BREAKER === 'true',
|
|
100
|
+
circuitBreakerThreshold: parseInt(process.env.CIRCUIT_BREAKER_THRESHOLD || '5', 10),
|
|
101
|
+
},
|
|
102
|
+
templates: {
|
|
103
|
+
part: process.env.TEMPLATE_PART,
|
|
104
|
+
assembly: process.env.TEMPLATE_ASSEMBLY,
|
|
105
|
+
drawing: process.env.TEMPLATE_DRAWING,
|
|
106
|
+
},
|
|
107
|
+
dev: {
|
|
108
|
+
mode: process.env.DEV_MODE === 'true' || process.env.NODE_ENV === 'development',
|
|
109
|
+
port: process.env.DEV_PORT ? parseInt(process.env.DEV_PORT, 10) : undefined,
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
return EnvironmentSchema.parse(raw);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Detect if we're running in a CI environment
|
|
116
|
+
*/
|
|
117
|
+
export function isCI() {
|
|
118
|
+
return !!(process.env.CI ||
|
|
119
|
+
process.env.GITHUB_ACTIONS ||
|
|
120
|
+
process.env.GITLAB_CI ||
|
|
121
|
+
process.env.JENKINS_HOME ||
|
|
122
|
+
process.env.TRAVIS ||
|
|
123
|
+
process.env.CIRCLECI);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Detect if we're running in a test environment
|
|
127
|
+
*/
|
|
128
|
+
export function isTest() {
|
|
129
|
+
return process.env.NODE_ENV === 'test' || !!process.env.JEST_WORKER_ID || !!process.env.VITEST;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Check if SolidWorks should be mocked
|
|
133
|
+
* Auto-enables mock in CI or test environments
|
|
134
|
+
*/
|
|
135
|
+
export function shouldUseMock(env) {
|
|
136
|
+
if (isCI() || isTest()) {
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
139
|
+
return env.solidworks.useMock;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Get the appropriate SolidWorks version string
|
|
143
|
+
*/
|
|
144
|
+
export function getSolidWorksVersion(env) {
|
|
145
|
+
return env.solidworks.version;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Validate that the environment is properly configured
|
|
149
|
+
*/
|
|
150
|
+
export function validateEnvironment(env) {
|
|
151
|
+
const errors = [];
|
|
152
|
+
// Check for conflicts
|
|
153
|
+
if (!env.solidworks.useMock && isCI()) {
|
|
154
|
+
errors.push('Cannot use real SolidWorks in CI environment. Set USE_MOCK_SOLIDWORKS=true');
|
|
155
|
+
}
|
|
156
|
+
// Validate version format
|
|
157
|
+
const version = parseInt(env.solidworks.version, 10);
|
|
158
|
+
if (Number.isNaN(version) || version < 2019 || version > 2030) {
|
|
159
|
+
errors.push(`Invalid SolidWorks version: ${env.solidworks.version}. Expected year between 2019-2030`);
|
|
160
|
+
}
|
|
161
|
+
// Validate paths if not using mock
|
|
162
|
+
if (!env.solidworks.useMock && !isCI() && !isTest()) {
|
|
163
|
+
// In production, we expect either auto-detection or explicit path
|
|
164
|
+
// This is just a warning, not an error
|
|
165
|
+
}
|
|
166
|
+
// Validate PDM configuration
|
|
167
|
+
if (env.features.pdm && !env.features.pdmVault) {
|
|
168
|
+
errors.push('PDM enabled but PDM_VAULT not specified');
|
|
169
|
+
}
|
|
170
|
+
return {
|
|
171
|
+
valid: errors.length === 0,
|
|
172
|
+
errors,
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Print environment configuration (for debugging)
|
|
177
|
+
*/
|
|
178
|
+
export function printEnvironment(env) {
|
|
179
|
+
console.log('=== SolidWorks MCP Server Configuration ===');
|
|
180
|
+
console.log('SolidWorks:');
|
|
181
|
+
console.log(` Version: ${env.solidworks.version}`);
|
|
182
|
+
console.log(` Use Mock: ${env.solidworks.useMock}`);
|
|
183
|
+
console.log(` Path: ${env.solidworks.path || '(auto-detect)'}`);
|
|
184
|
+
console.log('');
|
|
185
|
+
console.log('Features:');
|
|
186
|
+
console.log(` Macro Recording: ${env.features.macroRecording}`);
|
|
187
|
+
console.log(` PDM Integration: ${env.features.pdm}`);
|
|
188
|
+
console.log('');
|
|
189
|
+
console.log('Environment:');
|
|
190
|
+
console.log(` CI: ${isCI()}`);
|
|
191
|
+
console.log(` Test: ${isTest()}`);
|
|
192
|
+
console.log(` Dev Mode: ${env.dev.mode}`);
|
|
193
|
+
console.log(` Log Level: ${env.logging.level}`);
|
|
194
|
+
console.log('==========================================');
|
|
195
|
+
}
|
|
196
|
+
// Export singleton instance
|
|
197
|
+
let cachedEnv = null;
|
|
198
|
+
export function getEnvironment() {
|
|
199
|
+
if (!cachedEnv) {
|
|
200
|
+
cachedEnv = loadEnvironment();
|
|
201
|
+
}
|
|
202
|
+
return cachedEnv;
|
|
203
|
+
}
|
|
204
|
+
export function resetEnvironment() {
|
|
205
|
+
cachedEnv = null;
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/utils/environment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAqB9B,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAqB9B,eAAO,MAAM,MAAM,gBAYjB,CAAC;AAcH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI,CAE7D;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,GAAG,GAAG,IAAI,CAMnE;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI,CAEhE;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI,CAE9D;AAGD,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI,CAchH;AAGD,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,IAAI,CAE1G;AAGD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAGpG;AAGD,eAAe,MAAM,CAAC"}
|
package/dist/utils/logger.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Logger utility for SolidWorks MCP Server
|
|
3
3
|
*/
|
|
4
4
|
import winston from 'winston';
|
|
5
|
-
const { combine, timestamp, printf,
|
|
5
|
+
const { combine, timestamp, printf, errors } = winston.format;
|
|
6
6
|
// Custom format for console output
|
|
7
|
-
const
|
|
7
|
+
const _consoleFormat = printf(({ level, message, timestamp: ts, stack, ...metadata }) => {
|
|
8
8
|
let msg = `${ts} [${level}]: ${message}`;
|
|
9
9
|
if (Object.keys(metadata).length > 0) {
|
|
10
10
|
msg += ` ${JSON.stringify(metadata)}`;
|
|
@@ -25,16 +25,16 @@ export const logger = winston.createLogger({
|
|
|
25
25
|
filename: process.env.MCP_LOG_FILE || 'solidworks-mcp.log',
|
|
26
26
|
format: combine(timestamp(), winston.format.json()),
|
|
27
27
|
handleExceptions: true,
|
|
28
|
-
handleRejections: true
|
|
29
|
-
})
|
|
30
|
-
]
|
|
28
|
+
handleRejections: true,
|
|
29
|
+
}),
|
|
30
|
+
],
|
|
31
31
|
});
|
|
32
32
|
// Add error-only file in production
|
|
33
33
|
if (process.env.NODE_ENV === 'production') {
|
|
34
34
|
logger.add(new winston.transports.File({
|
|
35
35
|
filename: 'solidworks-mcp-error.log',
|
|
36
36
|
level: 'error',
|
|
37
|
-
format: combine(timestamp(), winston.format.json())
|
|
37
|
+
format: combine(timestamp(), winston.format.json()),
|
|
38
38
|
}));
|
|
39
39
|
}
|
|
40
40
|
// Logger helper functions
|
package/dist/utils/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SolidWorks Configuration Utilities
|
|
3
|
+
* Provides version detection and path resolution for SolidWorks installations
|
|
4
|
+
*/
|
|
5
|
+
export interface SolidWorksVersion {
|
|
6
|
+
year: string;
|
|
7
|
+
majorVersion: number;
|
|
8
|
+
revisionNumber: string;
|
|
9
|
+
}
|
|
10
|
+
export interface SolidWorksTemplates {
|
|
11
|
+
part: string;
|
|
12
|
+
assembly: string;
|
|
13
|
+
drawing: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class SolidWorksConfig {
|
|
16
|
+
/**
|
|
17
|
+
* Extract SolidWorks version information from the application
|
|
18
|
+
*/
|
|
19
|
+
static getVersion(swApp: any): SolidWorksVersion | null;
|
|
20
|
+
/**
|
|
21
|
+
* Get default template paths for SolidWorks
|
|
22
|
+
* Attempts multiple strategies to find the correct template location
|
|
23
|
+
*/
|
|
24
|
+
static getDefaultTemplates(swApp: any): SolidWorksTemplates | null;
|
|
25
|
+
/**
|
|
26
|
+
* Get a specific template path with fallback logic
|
|
27
|
+
*/
|
|
28
|
+
static getTemplatePath(swApp: any, templateType: 'part' | 'assembly' | 'drawing', customPath?: string): string;
|
|
29
|
+
/**
|
|
30
|
+
* Validate that a template file exists (if possible)
|
|
31
|
+
* Note: This is a best-effort check and may not work in all environments
|
|
32
|
+
*/
|
|
33
|
+
static validateTemplatePath(templatePath: string): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Get SolidWorks installation information for debugging
|
|
36
|
+
*/
|
|
37
|
+
static getInstallInfo(swApp: any): Record<string, any>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=solidworks-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solidworks-config.d.ts","sourceRoot":"","sources":["../../src/utils/solidworks-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,iBAAiB,GAAG,IAAI;IAmCvD;;;OAGG;IACH,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,mBAAmB,GAAG,IAAI;IA0ClE;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;IAoB9G;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAe1D;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CA8BvD"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SolidWorks Configuration Utilities
|
|
3
|
+
* Provides version detection and path resolution for SolidWorks installations
|
|
4
|
+
*/
|
|
5
|
+
export class SolidWorksConfig {
|
|
6
|
+
/**
|
|
7
|
+
* Extract SolidWorks version information from the application
|
|
8
|
+
*/
|
|
9
|
+
static getVersion(swApp) {
|
|
10
|
+
try {
|
|
11
|
+
const revisionNumber = swApp.RevisionNumber();
|
|
12
|
+
if (!revisionNumber)
|
|
13
|
+
return null;
|
|
14
|
+
// Revision number format: "YYYY SP X.Y" or "XX.Y.Z.ZZZZ"
|
|
15
|
+
// Modern format: "2024 SP5.0" or older format: "27.5.0.0084" (SW 2019)
|
|
16
|
+
const yearMatch = revisionNumber.match(/^(\d{4})/);
|
|
17
|
+
if (yearMatch) {
|
|
18
|
+
return {
|
|
19
|
+
year: yearMatch[1],
|
|
20
|
+
majorVersion: parseInt(yearMatch[1], 10),
|
|
21
|
+
revisionNumber,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
// Fallback for older version number format (27.x = SW2019, 28.x = SW2020, etc.)
|
|
25
|
+
const oldFormatMatch = revisionNumber.match(/^(\d+)\./);
|
|
26
|
+
if (oldFormatMatch) {
|
|
27
|
+
const majorVer = parseInt(oldFormatMatch[1], 10);
|
|
28
|
+
const year = (1992 + majorVer).toString();
|
|
29
|
+
return {
|
|
30
|
+
year,
|
|
31
|
+
majorVersion: parseInt(year, 10),
|
|
32
|
+
revisionNumber,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
catch (_error) {
|
|
38
|
+
// Errors are expected when SolidWorks is not available or mock throws
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Get default template paths for SolidWorks
|
|
44
|
+
* Attempts multiple strategies to find the correct template location
|
|
45
|
+
*/
|
|
46
|
+
static getDefaultTemplates(swApp) {
|
|
47
|
+
try {
|
|
48
|
+
// Strategy 1: Try to get user preference templates
|
|
49
|
+
try {
|
|
50
|
+
const partTemplate = swApp.GetUserPreferenceStringValue(0); // swDefaultTemplatePart
|
|
51
|
+
const assemblyTemplate = swApp.GetUserPreferenceStringValue(1); // swDefaultTemplateAssembly
|
|
52
|
+
const drawingTemplate = swApp.GetUserPreferenceStringValue(8); // swDefaultTemplateDrawing
|
|
53
|
+
if (partTemplate && assemblyTemplate && drawingTemplate) {
|
|
54
|
+
return {
|
|
55
|
+
part: partTemplate,
|
|
56
|
+
assembly: assemblyTemplate,
|
|
57
|
+
drawing: drawingTemplate,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (_e) {
|
|
62
|
+
// User preferences not available
|
|
63
|
+
}
|
|
64
|
+
// Strategy 2: Build paths based on SolidWorks version
|
|
65
|
+
const version = SolidWorksConfig.getVersion(swApp);
|
|
66
|
+
if (version?.year) {
|
|
67
|
+
const basePath = `C:\\ProgramData\\SolidWorks\\SOLIDWORKS ${version.year}\\templates`;
|
|
68
|
+
return {
|
|
69
|
+
part: `${basePath}\\Part.prtdot`,
|
|
70
|
+
assembly: `${basePath}\\Assembly.asmdot`,
|
|
71
|
+
drawing: `${basePath}\\Drawing.drwdot`,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
// Strategy 3: Try version-independent paths
|
|
75
|
+
const genericBasePath = 'C:\\ProgramData\\SolidWorks\\templates';
|
|
76
|
+
return {
|
|
77
|
+
part: `${genericBasePath}\\Part.prtdot`,
|
|
78
|
+
assembly: `${genericBasePath}\\Assembly.asmdot`,
|
|
79
|
+
drawing: `${genericBasePath}\\Drawing.drwdot`,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
catch (_error) {
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Get a specific template path with fallback logic
|
|
88
|
+
*/
|
|
89
|
+
static getTemplatePath(swApp, templateType, customPath) {
|
|
90
|
+
// If custom path provided, use it
|
|
91
|
+
if (customPath && customPath !== '') {
|
|
92
|
+
return customPath;
|
|
93
|
+
}
|
|
94
|
+
// Try to get from default templates
|
|
95
|
+
const templates = SolidWorksConfig.getDefaultTemplates(swApp);
|
|
96
|
+
if (templates) {
|
|
97
|
+
return templates[templateType];
|
|
98
|
+
}
|
|
99
|
+
// Final fallback - throw error with helpful message
|
|
100
|
+
throw new Error(`Cannot determine SolidWorks ${templateType} template path. ` +
|
|
101
|
+
`Please specify the template path explicitly in your request, or ensure ` +
|
|
102
|
+
`SolidWorks default templates are configured in Tools > Options > File Locations > Document Templates.`);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Validate that a template file exists (if possible)
|
|
106
|
+
* Note: This is a best-effort check and may not work in all environments
|
|
107
|
+
*/
|
|
108
|
+
static validateTemplatePath(templatePath) {
|
|
109
|
+
try {
|
|
110
|
+
// In Node.js environment with file system access
|
|
111
|
+
if (typeof require !== 'undefined') {
|
|
112
|
+
const fs = require('node:fs');
|
|
113
|
+
return fs.existsSync(templatePath);
|
|
114
|
+
}
|
|
115
|
+
// If we can't validate, assume it's valid
|
|
116
|
+
return true;
|
|
117
|
+
}
|
|
118
|
+
catch (_error) {
|
|
119
|
+
// Can't validate, assume it's valid
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get SolidWorks installation information for debugging
|
|
125
|
+
*/
|
|
126
|
+
static getInstallInfo(swApp) {
|
|
127
|
+
const info = {};
|
|
128
|
+
try {
|
|
129
|
+
const version = SolidWorksConfig.getVersion(swApp);
|
|
130
|
+
if (version) {
|
|
131
|
+
info.version = version;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
info.versionError = String(e);
|
|
136
|
+
}
|
|
137
|
+
try {
|
|
138
|
+
const templates = SolidWorksConfig.getDefaultTemplates(swApp);
|
|
139
|
+
if (templates) {
|
|
140
|
+
info.templates = templates;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
catch (e) {
|
|
144
|
+
info.templatesError = String(e);
|
|
145
|
+
}
|
|
146
|
+
try {
|
|
147
|
+
// Try to get installation path
|
|
148
|
+
info.visible = swApp.Visible;
|
|
149
|
+
}
|
|
150
|
+
catch (_e) {
|
|
151
|
+
// Ignore
|
|
152
|
+
}
|
|
153
|
+
return info;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=solidworks-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solidworks-config.js","sourceRoot":"","sources":["../../src/utils/solidworks-config.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "solidworks-mcp-server",
|
|
3
|
-
"version": "3.
|
|
4
|
-
"description": "
|
|
5
|
-
"type": "module",
|
|
6
|
-
"main": "dist/index.js",
|
|
7
|
-
"bin": {
|
|
8
|
-
"solidworks-mcp-server": "./dist/index.js"
|
|
9
|
-
},
|
|
10
|
-
"scripts": {
|
|
11
|
-
"build": "tsc",
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"test": "vitest"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
"@
|
|
42
|
-
"@
|
|
43
|
-
"@
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
],
|
|
60
|
-
"author": "SolidWorks MCP Contributors",
|
|
61
|
-
"license": "MIT",
|
|
62
|
-
"repository": {
|
|
63
|
-
"type": "git",
|
|
64
|
-
"url": "git+https://github.com/vespo92/SolidworksMCP-TS.git"
|
|
65
|
-
},
|
|
66
|
-
"bugs": {
|
|
67
|
-
"url": "https://github.com/vespo92/SolidworksMCP-TS/issues"
|
|
68
|
-
},
|
|
69
|
-
"homepage": "https://github.com/vespo92/SolidworksMCP-TS#readme",
|
|
70
|
-
"files": [
|
|
71
|
-
"dist/",
|
|
72
|
-
"scripts/",
|
|
73
|
-
"README.md",
|
|
74
|
-
"LICENSE",
|
|
75
|
-
"CHANGELOG.md"
|
|
76
|
-
],
|
|
77
|
-
"publishConfig": {
|
|
78
|
-
"access": "public",
|
|
79
|
-
"registry": "https://registry.npmjs.org/"
|
|
80
|
-
},
|
|
81
|
-
"engines": {
|
|
82
|
-
"node": ">=20.0.0"
|
|
83
|
-
}
|
|
84
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "solidworks-mcp-server",
|
|
3
|
+
"version": "3.1.3",
|
|
4
|
+
"description": "SolidWorks MCP Server - AI-driven CAD automation with intelligent COM/VBA routing",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"bin": {
|
|
8
|
+
"solidworks-mcp-server": "./dist/index.js"
|
|
9
|
+
},
|
|
10
|
+
"scripts": {
|
|
11
|
+
"build": "tsc",
|
|
12
|
+
"dev": "tsx watch src/index.ts",
|
|
13
|
+
"start": "node dist/index.js",
|
|
14
|
+
"lint": "biome check src/",
|
|
15
|
+
"lint:fix": "biome check --fix src/",
|
|
16
|
+
"format": "biome format --write src/",
|
|
17
|
+
"typecheck": "tsc --noEmit",
|
|
18
|
+
"check": "tsc --noEmit && biome check src/",
|
|
19
|
+
"test": "vitest run",
|
|
20
|
+
"test:watch": "vitest",
|
|
21
|
+
"test:coverage": "vitest run --coverage",
|
|
22
|
+
"test:integration": "USE_MOCK_SOLIDWORKS=false vitest run --config vitest.integration.config.ts",
|
|
23
|
+
"test:versions": "node scripts/test-versions.js"
|
|
24
|
+
},
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@modelcontextprotocol/sdk": "^1.0.1",
|
|
27
|
+
"chromadb": "^1.8.1",
|
|
28
|
+
"dotenv": "^16.4.5",
|
|
29
|
+
"handlebars": "^4.7.8",
|
|
30
|
+
"mssql": "^11.0.0",
|
|
31
|
+
"pg": "^8.16.0",
|
|
32
|
+
"uuid": "^11.0.0",
|
|
33
|
+
"winston": "^3.15.0",
|
|
34
|
+
"zod": "^3.23.8",
|
|
35
|
+
"zod-to-json-schema": "^3.24.6"
|
|
36
|
+
},
|
|
37
|
+
"optionalDependencies": {
|
|
38
|
+
"winax": "^3.4.2"
|
|
39
|
+
},
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"@biomejs/biome": "^2.4.8",
|
|
42
|
+
"@types/dotenv": "^6.1.1",
|
|
43
|
+
"@types/mssql": "^9.1.7",
|
|
44
|
+
"@types/node": "^22.5.1",
|
|
45
|
+
"@types/pg": "^8.15.5",
|
|
46
|
+
"@types/uuid": "^10.0.0",
|
|
47
|
+
"tsx": "^4.7.0",
|
|
48
|
+
"typescript": "^5.5.4",
|
|
49
|
+
"vitest": "^1.2.1"
|
|
50
|
+
},
|
|
51
|
+
"keywords": [
|
|
52
|
+
"mcp",
|
|
53
|
+
"solidworks",
|
|
54
|
+
"cad",
|
|
55
|
+
"automation",
|
|
56
|
+
"vba",
|
|
57
|
+
"com-interop",
|
|
58
|
+
"windows"
|
|
59
|
+
],
|
|
60
|
+
"author": "SolidWorks MCP Contributors",
|
|
61
|
+
"license": "MIT",
|
|
62
|
+
"repository": {
|
|
63
|
+
"type": "git",
|
|
64
|
+
"url": "git+https://github.com/vespo92/SolidworksMCP-TS.git"
|
|
65
|
+
},
|
|
66
|
+
"bugs": {
|
|
67
|
+
"url": "https://github.com/vespo92/SolidworksMCP-TS/issues"
|
|
68
|
+
},
|
|
69
|
+
"homepage": "https://github.com/vespo92/SolidworksMCP-TS#readme",
|
|
70
|
+
"files": [
|
|
71
|
+
"dist/",
|
|
72
|
+
"scripts/",
|
|
73
|
+
"README.md",
|
|
74
|
+
"LICENSE",
|
|
75
|
+
"CHANGELOG.md"
|
|
76
|
+
],
|
|
77
|
+
"publishConfig": {
|
|
78
|
+
"access": "public",
|
|
79
|
+
"registry": "https://registry.npmjs.org/"
|
|
80
|
+
},
|
|
81
|
+
"engines": {
|
|
82
|
+
"node": ">=20.0.0"
|
|
83
|
+
}
|
|
84
|
+
}
|