@softtechai/quickmcp 1.1.12 → 1.1.13

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softtechai/quickmcp",
3
- "version": "1.1.12",
3
+ "version": "1.1.13",
4
4
  "description": "An application to generate MCP servers from various data sources and test them",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -34,57 +34,17 @@ if (dotenv) {
34
34
  }
35
35
  }
36
36
 
37
- let logger;
38
- try {
39
- ({ logger } = require('./dist/utils/logger.js'));
40
- } catch (_) {
41
- logger = {
42
- trace: (...args) => console.error(...args),
43
- debug: (...args) => console.error(...args),
44
- info: (...args) => console.error(...args),
45
- warn: (...args) => console.error(...args),
46
- error: (...args) => console.error(...args)
47
- };
48
- }
49
-
50
37
  // Secure default for direct-stdio: if caller does not provide auth/deploy mode,
51
38
  // enforce ONPREM semantics (AUTH_MODE=LITE) so MCP token checks are active.
52
39
  if (!process.env.AUTH_MODE && !process.env.DEPLOY_MODE) {
53
40
  process.env.DEPLOY_MODE = 'ONPREM';
54
- logger.error('[QuickMCP] AUTH_MODE/DEPLOY_MODE not provided, defaulting DEPLOY_MODE=ONPREM (AUTH_MODE=LITE)');
41
+ // Do not use DB-backed logger here; datastore path bootstrap is not finalized yet.
42
+ console.error('[QuickMCP] AUTH_MODE/DEPLOY_MODE not provided, defaulting DEPLOY_MODE=ONPREM (AUTH_MODE=LITE)');
55
43
  }
56
44
 
57
45
  // Use the current working directory provided by the caller.
58
46
  // Do not change directories; keep paths relative to this script.
59
47
 
60
- let safeCreateDataStore;
61
- try {
62
- ({ safeCreateDataStore } = require('./dist/database/database-utils.js'));
63
- } catch (_) {
64
- throw new Error('[QuickMCP] Missing dist/database/database-utils.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
65
- }
66
-
67
- let resolveAuthMode;
68
- try {
69
- ({ resolveAuthMode } = require('./dist/config/auth-config.js'));
70
- } catch (_) {
71
- throw new Error('[QuickMCP] Missing dist/config/auth-config.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
72
- }
73
-
74
- let DynamicMCPExecutor;
75
- try {
76
- ({ DynamicMCPExecutor } = require('./dist/server/dynamic-mcp-executor.js'));
77
- } catch (_) {
78
- throw new Error('[QuickMCP] Missing dist/server/dynamic-mcp-executor.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
79
- }
80
-
81
- let McpCoreService;
82
- try {
83
- ({ McpCoreService } = require('./dist/mcp-core/McpCoreService.js'));
84
- } catch (_) {
85
- throw new Error('[QuickMCP] Missing dist/mcp-core/McpCoreService.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
86
- }
87
-
88
48
  // Parse CLI flags for convenience
89
49
  // Supported flags:
90
50
  // --web | -w | web -> explicitly enable web UI (default: enabled)
@@ -169,6 +129,49 @@ if (!process.env.QUICKMCP_DATA_DIR) {
169
129
  process.env.QUICKMCP_DATA_DIR = ensureWritableDataDir(resolveStableDefaultDataDir());
170
130
  }
171
131
 
132
+ // IMPORTANT: Keep dist imports after QUICKMCP_DATA_DIR bootstrap.
133
+ // If any imported module initializes datastore as a side effect, it must see final env.
134
+ let safeCreateDataStore;
135
+ try {
136
+ ({ safeCreateDataStore } = require('./dist/database/database-utils.js'));
137
+ } catch (_) {
138
+ throw new Error('[QuickMCP] Missing dist/database/database-utils.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
139
+ }
140
+
141
+ let resolveAuthMode;
142
+ try {
143
+ ({ resolveAuthMode } = require('./dist/config/auth-config.js'));
144
+ } catch (_) {
145
+ throw new Error('[QuickMCP] Missing dist/config/auth-config.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
146
+ }
147
+
148
+ let DynamicMCPExecutor;
149
+ try {
150
+ ({ DynamicMCPExecutor } = require('./dist/server/dynamic-mcp-executor.js'));
151
+ } catch (_) {
152
+ throw new Error('[QuickMCP] Missing dist/server/dynamic-mcp-executor.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
153
+ }
154
+
155
+ let McpCoreService;
156
+ try {
157
+ ({ McpCoreService } = require('./dist/mcp-core/McpCoreService.js'));
158
+ } catch (_) {
159
+ throw new Error('[QuickMCP] Missing dist/mcp-core/McpCoreService.js. Run `npm run build` before starting quickmcp-direct-stdio.js');
160
+ }
161
+
162
+ let logger;
163
+ try {
164
+ ({ logger } = require('./dist/utils/logger.js'));
165
+ } catch (_) {
166
+ logger = {
167
+ trace: (...args) => console.error(...args),
168
+ debug: (...args) => console.error(...args),
169
+ info: (...args) => console.error(...args),
170
+ warn: (...args) => console.error(...args),
171
+ error: (...args) => console.error(...args)
172
+ };
173
+ }
174
+
172
175
  const dataStore = safeCreateDataStore({ logger: (...args) => logger.error(...args) });
173
176
  const executor = new DynamicMCPExecutor();
174
177