@justanothermldude/mcp-exec 1.4.1 → 1.6.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.
- package/dist/codegen/wrapper-generator.d.ts +1 -1
- package/dist/codegen/wrapper-generator.d.ts.map +1 -1
- package/dist/codegen/wrapper-generator.js +45 -11
- package/dist/codegen/wrapper-generator.js.map +1 -1
- package/dist/index.js +122 -25
- package/dist/sandbox/executor.d.ts.map +1 -1
- package/dist/sandbox/executor.js +3 -4
- package/dist/sandbox/executor.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +7 -4
- package/dist/server.js.map +1 -1
- package/dist/tools/execute-with-wrappers.d.ts.map +1 -1
- package/dist/tools/execute-with-wrappers.js +24 -17
- package/dist/tools/execute-with-wrappers.js.map +1 -1
- package/dist/tools/tool-catalog.d.ts +44 -0
- package/dist/tools/tool-catalog.d.ts.map +1 -0
- package/dist/tools/tool-catalog.js +101 -0
- package/dist/tools/tool-catalog.js.map +1 -0
- package/dist/types/execution.d.ts +2 -0
- package/dist/types/execution.d.ts.map +1 -1
- package/dist/types/execution.js.map +1 -1
- package/package.json +1 -1
|
@@ -21,7 +21,7 @@ export declare function normalizeName(name: string): string;
|
|
|
21
21
|
* @param contextName - Context name for error messages (e.g., server name)
|
|
22
22
|
* @returns String containing Proxy code to be injected into generated wrapper
|
|
23
23
|
*/
|
|
24
|
-
export declare function generateFuzzyProxy(targetVarName: string, contextName: string): string;
|
|
24
|
+
export declare function generateFuzzyProxy(targetVarName: string, contextName: string, helpString?: string): string;
|
|
25
25
|
/**
|
|
26
26
|
* Generate TypeScript wrapper code for a single MCP tool (legacy - kept for compatibility)
|
|
27
27
|
* @param tool - Tool definition from MCP server
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapper-generator.d.ts","sourceRoot":"","sources":["../../src/codegen/wrapper-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"wrapper-generator.d.ts","sourceRoot":"","sources":["../../src/codegen/wrapper-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAuSvE;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CA2B1G;AAwJD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAqDpF;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAE,MAAa,EAAE,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAmDlJ;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAiBxG;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CA8DnE"}
|
|
@@ -209,7 +209,8 @@ function __guardFields(obj, label) {
|
|
|
209
209
|
|| prop === 'valueOf' || prop === 'toString' || prop === 'inspect') {
|
|
210
210
|
return target[prop];
|
|
211
211
|
}
|
|
212
|
-
if (prop
|
|
212
|
+
if (prop === '__proto__' || prop === 'prototype') return undefined;
|
|
213
|
+
if (Object.prototype.hasOwnProperty.call(target, prop)) {
|
|
213
214
|
const val = target[prop];
|
|
214
215
|
if (val && typeof val === 'object') {
|
|
215
216
|
return __guardFields(val, label + '.' + String(prop));
|
|
@@ -224,6 +225,14 @@ function __guardFields(obj, label) {
|
|
|
224
225
|
}
|
|
225
226
|
`;
|
|
226
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Escape a string for safe embedding inside a JavaScript template literal.
|
|
230
|
+
* JSON.stringify does NOT escape backticks or ${}, which can break generated
|
|
231
|
+
* template literals or enable code injection.
|
|
232
|
+
*/
|
|
233
|
+
function escapeForTemplateLiteral(s) {
|
|
234
|
+
return s.replace(/`/g, '\\`').replace(/\$\{/g, '\\${');
|
|
235
|
+
}
|
|
227
236
|
/**
|
|
228
237
|
* Sanitize tool name to valid TypeScript identifier
|
|
229
238
|
*/
|
|
@@ -255,14 +264,18 @@ export function normalizeName(name) {
|
|
|
255
264
|
* @param contextName - Context name for error messages (e.g., server name)
|
|
256
265
|
* @returns String containing Proxy code to be injected into generated wrapper
|
|
257
266
|
*/
|
|
258
|
-
export function generateFuzzyProxy(targetVarName, contextName) {
|
|
259
|
-
const safeContextName = JSON.stringify(contextName);
|
|
267
|
+
export function generateFuzzyProxy(targetVarName, contextName, helpString) {
|
|
268
|
+
const safeContextName = escapeForTemplateLiteral(JSON.stringify(contextName));
|
|
269
|
+
const safeHelp = helpString ? escapeForTemplateLiteral(helpString) : '';
|
|
260
270
|
return `new Proxy(${targetVarName}, {
|
|
261
271
|
get(target, prop) {
|
|
262
272
|
if (typeof prop !== 'string') return undefined;
|
|
263
273
|
|
|
264
|
-
//
|
|
265
|
-
if (prop
|
|
274
|
+
// Block prototype pollution vectors
|
|
275
|
+
if (prop === '__proto__' || prop === 'constructor' || prop === 'prototype') return undefined;
|
|
276
|
+
|
|
277
|
+
// Fast-path: exact match — use hasOwnProperty to avoid prototype chain leaks
|
|
278
|
+
if (Object.prototype.hasOwnProperty.call(target, prop)) return target[prop];
|
|
266
279
|
|
|
267
280
|
// Fuzzy match: normalize and search
|
|
268
281
|
const normalizedProp = prop.toLowerCase().replace(/[_-]/g, '');
|
|
@@ -273,9 +286,9 @@ export function generateFuzzyProxy(targetVarName, contextName) {
|
|
|
273
286
|
}
|
|
274
287
|
}
|
|
275
288
|
|
|
276
|
-
// No match found - throw helpful error
|
|
289
|
+
// No match found - throw helpful error with parameter signatures
|
|
277
290
|
const available = Object.keys(target).join(', ');
|
|
278
|
-
throw new TypeError(\`Property "\${prop}" not found on ${safeContextName}. Available: \${available}\`);
|
|
291
|
+
throw new TypeError(\`Property "\${prop}" not found on ${safeContextName}. Available: \${available}${safeHelp ? '\\nAPI: ' + safeHelp : ''}\`);
|
|
279
292
|
}
|
|
280
293
|
})`;
|
|
281
294
|
}
|
|
@@ -365,6 +378,17 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
365
378
|
const safeServerName = JSON.stringify(serverName);
|
|
366
379
|
const safeToolName = JSON.stringify(tool.name);
|
|
367
380
|
lines.push(` ${methodName}: async (${inputParam}): Promise<unknown> => {`);
|
|
381
|
+
// Runtime required-param validation
|
|
382
|
+
if (hasInput && requiredParams.length > 0) {
|
|
383
|
+
const paramList = JSON.stringify(requiredParams);
|
|
384
|
+
const schemaStr = escapeForTemplateLiteral('{' + requiredParams.join(', ') + (optionalParams.length > 0 ? ', ' + optionalParams.map(p => p + '?').join(', ') : '') + '}');
|
|
385
|
+
lines.push(` for (const __p of ${paramList}) {`);
|
|
386
|
+
lines.push(` if (!input || !(__p in input)) {`);
|
|
387
|
+
lines.push(` const __got = input ? Object.keys(input).join(', ') : 'none';`);
|
|
388
|
+
lines.push(` throw new Error(\`[${escapeForTemplateLiteral(safeServerName)}.${escapeForTemplateLiteral(safeToolName)}] Missing required parameter "\${__p}". Got: \${__got}. Expected: ${schemaStr}\`);`);
|
|
389
|
+
lines.push(` }`);
|
|
390
|
+
lines.push(` }`);
|
|
391
|
+
}
|
|
368
392
|
lines.push(` const response = await fetch('http://127.0.0.1:${bridgePort}/call', {`);
|
|
369
393
|
lines.push(` method: 'POST',`);
|
|
370
394
|
lines.push(` headers: { 'Content-Type': 'application/json' },`);
|
|
@@ -374,16 +398,18 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
374
398
|
lines.push(` args: ${inputArg},`);
|
|
375
399
|
lines.push(` }),`);
|
|
376
400
|
lines.push(` });`);
|
|
401
|
+
// Use escapeForTemplateLiteral to prevent backtick/`${}` injection in error messages
|
|
402
|
+
const tlSafe = (s) => escapeForTemplateLiteral(s);
|
|
377
403
|
lines.push(` if (!response.ok) {`);
|
|
378
|
-
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] HTTP \${response.status}: \${response.statusText}\`);`);
|
|
404
|
+
lines.push(` throw new Error(\`[${tlSafe(safeServerName)}.${tlSafe(safeToolName)}] HTTP \${response.status}: \${response.statusText}\`);`);
|
|
379
405
|
lines.push(` }`);
|
|
380
406
|
lines.push(` const data = await response.json() as { success: boolean; content?: unknown; error?: string; isError?: boolean };`);
|
|
381
407
|
lines.push(` if (!data.success) {`);
|
|
382
|
-
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] \${data.error || 'Tool call failed'}\`);`);
|
|
408
|
+
lines.push(` throw new Error(\`[${tlSafe(safeServerName)}.${tlSafe(safeToolName)}] \${data.error || 'Tool call failed'}\`);`);
|
|
383
409
|
lines.push(` }`);
|
|
384
410
|
lines.push(` if (data.isError) {`);
|
|
385
411
|
lines.push(` const errText = Array.isArray(data.content) && data.content[0]?.text ? data.content[0].text : 'Tool returned isError';`);
|
|
386
|
-
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] \${errText}\`);`);
|
|
412
|
+
lines.push(` throw new Error(\`[${tlSafe(safeServerName)}.${tlSafe(safeToolName)}] \${errText}\`);`);
|
|
387
413
|
lines.push(` }`);
|
|
388
414
|
lines.push(` // Auto-parse JSON from MCP text content blocks for convenience`);
|
|
389
415
|
lines.push(` const content = data.content;`);
|
|
@@ -497,8 +523,16 @@ export function generateServerModule(tools, serverName, bridgePort = 3000, varia
|
|
|
497
523
|
}
|
|
498
524
|
lines.push('};');
|
|
499
525
|
lines.push('');
|
|
526
|
+
// Compute compact API help string for error messages
|
|
527
|
+
const helpParts = tools.map(t => {
|
|
528
|
+
const allProps = Object.keys(t.inputSchema?.properties ?? {});
|
|
529
|
+
const req = t.inputSchema?.required ?? [];
|
|
530
|
+
const params = [...req, ...allProps.filter(k => !req.includes(k)).map(p => p + '?')];
|
|
531
|
+
return `${sanitizeIdentifier(t.name)}(${params.length > 0 ? '{' + params.join(', ') + '}' : ''})`;
|
|
532
|
+
});
|
|
533
|
+
const helpString = helpParts.join(', ');
|
|
500
534
|
// Wrap with fuzzy Proxy for case-agnostic access
|
|
501
|
-
lines.push(`const ${namespaceName} = ${generateFuzzyProxy(`${namespaceName}_raw`, serverName)};`);
|
|
535
|
+
lines.push(`const ${namespaceName} = ${generateFuzzyProxy(`${namespaceName}_raw`, serverName, helpString)};`);
|
|
502
536
|
lines.push('');
|
|
503
537
|
return lines.join('\n');
|
|
504
538
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapper-generator.js","sourceRoot":"","sources":["../../src/codegen/wrapper-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wrapper-generator.js","sourceRoot":"","sources":["../../src/codegen/wrapper-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,eAAe,GAAG,4BAA4B,CAAC;AAuBrD;;;;;;;GAOG;AACH,SAAS,cAAc,CACrB,IAAoC,EACpC,YAAqB,IAAI,EACzB,WAAgD,EAChD,UAAuB,IAAI,GAAG,EAAE;IAEhC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,cAAc;IACd,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;QACnE,IAAI,WAAW,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO,SAAS,CAAC,CAAC,cAAc;YACzD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;YACrC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxB,OAAO,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,uBAAuB;IACvB,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,mDAAmD;IACnD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,oBAAoB;IACpB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,eAAe;IACf,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;aAC9D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,eAAe;IACf,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;aAC9D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,eAAe;IACf,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;aAC9D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3D,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1E,IAAI,YAAY;gBAAE,OAAO,SAAS,CAAC;YACnC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACrE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC;YACzD,MAAM,MAAM,GAAG,cAAc,CAAC,KAA2B,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAC7F,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YAC3C,OAAO,GAAG,GAAG,GAAG,YAAY,KAAK,MAAM,EAAE,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,8BAA8B;QAC9B,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC3C,CAAC;aAAM,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;YAC/F,oFAAoF;YACpF,iFAAiF;YACjF,mEAAmE;YACnE,SAAS,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC3C,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACnF,mEAAmE;YACnE,OAAO,yBAAyB,CAAC;QACnC,CAAC;QAED,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,wCAAwC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,oBAAoB,KAAK,QAAQ,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,CAAC,EAAE,CAAC;YAChI,OAAO,yBAAyB,CAAC;QACnC,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjG,OAAO,GAAG,QAAQ,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;IAEnD,4CAA4C;IAC5C,IAAK,IAAY,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QACpC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrF,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,IAAY;IACjC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,QAAQ,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,yBAAyB,CAAC;QACnC,KAAK,OAAO;YACV,OAAO,WAAW,CAAC;QACrB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,MAAuH,EAAE,WAAgD;IAChN,MAAM,IAAI,GAAG,WAAW,IAAK,MAAc,CAAC,WAAW,CAAC;IAExD,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,aAAa,IAAI,KAAK,CAAC;IAChC,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC;IAElC,KAAK,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,GAAG,SAA+B,CAAC;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;QAChE,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAEtD,kCAAkC;QAClC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,GAAG,YAAY,KAAK,MAAM,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAY;IACjC,uDAAuD;IACvD,qEAAqE;IACrE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB;IACzB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCR,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,CAAS;IACzC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,IAAY;IACtC,4EAA4E;IAC5E,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACpD,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAAqB,EAAE,WAAmB,EAAE,UAAmB;IAChG,MAAM,eAAe,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,OAAO,aAAa,aAAa;;;;;;;;;;;;;;;;;;;;;6DAqB0B,eAAe,6BAA6B,QAAQ,CAAC,CAAC,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE;;GAE3I,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,IAAI;SACR,KAAK,CAAC,eAAe,CAAC;SACtB,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACzE,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,IAAoB,EAAE,eAAoD;IACvG,MAAM,aAAa,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAExD,IAAI,IAAI,CAAC,WAAW,EAAE,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxF,OAAO,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,wBAAwB,CAAC,IAAoB,EAAE,UAAkB,EAAE,UAAkB;IAC5F,gEAAgE;IAChE,6EAA6E;IAC7E,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACrG,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,mDAAmD;IACnD,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,IAAI,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;QACjC,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAChE,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClD,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,QAAQ,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YACjC,KAAK,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChF,MAAM,IAAI,GAAG,SAA+B,CAAC;gBAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;gBAC1E,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;gBACxD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,KAAK,CAAC,IAAI,CAAC,qBAAqB,QAAQ,IAAI,MAAM,MAAM,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC7F,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,qBAAqB,QAAQ,IAAI,MAAM,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;QACH,CAAC;QACD,gCAAgC;QAChC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3D,KAAK,CAAC,IAAI,CAAC,kBAAkB,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC/F,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,kBAAkB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,oBAAoB;QACpB,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,4FAA4F,cAAc,WAAW,YAAY,KAAK,CAAC,CAAC;QACnJ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,yEAAyE;IACzE,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE/C,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,YAAY,UAAU,0BAA0B,CAAC,CAAC;IAE5E,oCAAoC;IACpC,IAAI,QAAQ,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,wBAAwB,CACxC,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAC9H,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,yBAAyB,SAAS,KAAK,CAAC,CAAC;QACpD,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;QACpF,KAAK,CAAC,IAAI,CAAC,8BAA8B,wBAAwB,CAAC,cAAc,CAAC,IAAI,wBAAwB,CAAC,YAAY,CAAC,qEAAqE,SAAS,MAAM,CAAC,CAAC;QACjN,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,sDAAsD,UAAU,WAAW,CAAC,CAAC;IACxF,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;IACrE,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC3C,KAAK,CAAC,IAAI,CAAC,mBAAmB,cAAc,GAAG,CAAC,CAAC;IACjD,KAAK,CAAC,IAAI,CAAC,iBAAiB,YAAY,GAAG,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,GAAG,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,qFAAqF;IACrF,MAAM,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;IAC1D,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,4BAA4B,MAAM,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,yDAAyD,CAAC,CAAC;IAChJ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CAAC,uHAAuH,CAAC,CAAC;IACpI,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACvC,KAAK,CAAC,IAAI,CAAC,4BAA4B,MAAM,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,4CAA4C,CAAC,CAAC;IACnI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,8HAA8H,CAAC,CAAC;IAC3I,KAAK,CAAC,IAAI,CAAC,4BAA4B,MAAM,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IAC1G,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IAClF,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;IACvG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC1B,KAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,oGAAoG,CAAC,CAAC;IACjH,KAAK,CAAC,IAAI,CAAC,iGAAiG,CAAC,CAAC;IAC9G,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IACvD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,CAAC,IAAI,CAAC,8EAA8E,cAAc,YAAY,YAAY,aAAa,CAAC,CAAC;IAC9I,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAClC,KAAK,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;IACtF,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAClC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEnB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAoB,EAAE,UAAkB;IAC1E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAExD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,mDAAmD;IACnD,IAAI,IAAI,CAAC,WAAW,EAAE,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxF,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,oBAAoB;IACpB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,KAAK,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChF,MAAM,IAAI,GAAG,SAA+B,CAAC;gBAC7C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,KAAK,CAAC,IAAI,CAAC,mBAAmB,QAAQ,MAAM,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACjF,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,iEAAiE;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACrG,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3C,KAAK,CAAC,IAAI,CAAC,kBAAkB,QAAQ,IAAI,UAAU,uBAAuB,CAAC,CAAC;IAC5E,KAAK,CAAC,IAAI,CAAC,mCAAmC,eAAe,MAAM,CAAC,CAAC;IACrE,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAClC,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;IACnE,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,IAAI,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,GAAG,CAAC,CAAC;IACvC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;IAC/E,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACxC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAuB,EAAE,UAAkB,EAAE,aAAqB,IAAI,EAAE,oBAA6B;IACxI,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,aAAa,GAAG,oBAAoB,IAAI,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAE7E,sBAAsB;IACtB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,6CAA6C,UAAU,oBAAoB,CAAC,CAAC;IACxF,KAAK,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;IACtF,KAAK,CAAC,IAAI,CAAC,wBAAwB,aAAa,eAAe,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,sEAAsE;IACtE,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAEjC,gCAAgC;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAI,IAAI,CAAC,WAAmB,EAAE,WAAW,IAAK,IAAI,CAAC,WAAmB,EAAE,KAAK,CAAC;QAC5F,MAAM,aAAa,GAAG,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5D,IAAI,aAAa,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,IAAI,CAAC,SAAS,aAAa,UAAU,CAAC,CAAC;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;QACnE,oFAAoF;IACtF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,qDAAqD;IACrD,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,IAAI,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACrF,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IACpG,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAExC,iDAAiD;IACjD,KAAK,CAAC,IAAI,CAAC,SAAS,aAAa,MAAM,kBAAkB,CAAC,GAAG,aAAa,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9G,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,4BAA4B,CAAC,WAAqB,EAAE,OAA4B;IAC9F,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;IAC1F,KAAK,CAAC,IAAI,CAAC,iBAAiB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACjE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC;IAC7D,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,eAAe,kBAAkB,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,WAAqB;IACzD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,gDAAgD;IAChD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAoB,CAAC;IACxD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,wCAAwC;IAEvF,gEAAgE;IAChE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAEnD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IAED,wEAAwE;IACxE,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,KAAK,MAAM,YAAY,IAAI,WAAW,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;QAE7D,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,wCAAwC;YACxC,MAAM,UAAU,GAAG,GAAG,SAAS,IAAI,cAAc,EAAE,CAAC;YACpD,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,uCAAuC,YAAY,2CAA2C,SAAS,aAAa,UAAU,IAAI,CAAC,CAAC;YAC/I,cAAc,EAAE,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,6CAA6C;YAC7C,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,kEAAkE;IAClE,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAC3D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;IAC1F,KAAK,CAAC,IAAI,CAAC,iBAAiB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,eAAe,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,6EAA6E;IAC7E,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACjE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QAChD,8CAA8C;QAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,UAAU,GAAG,CAAC,CAAC;IAChE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,iEAAiE;IACjE,KAAK,CAAC,IAAI,CAAC,eAAe,kBAAkB,CAAC,iBAAiB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -352,7 +352,8 @@ function __guardFields(obj, label) {
|
|
|
352
352
|
|| prop === 'valueOf' || prop === 'toString' || prop === 'inspect') {
|
|
353
353
|
return target[prop];
|
|
354
354
|
}
|
|
355
|
-
if (prop
|
|
355
|
+
if (prop === '__proto__' || prop === 'prototype') return undefined;
|
|
356
|
+
if (Object.prototype.hasOwnProperty.call(target, prop)) {
|
|
356
357
|
const val = target[prop];
|
|
357
358
|
if (val && typeof val === 'object') {
|
|
358
359
|
return __guardFields(val, label + '.' + String(prop));
|
|
@@ -368,6 +369,10 @@ function __guardFields(obj, label) {
|
|
|
368
369
|
`;
|
|
369
370
|
}
|
|
370
371
|
__name(generateFieldGuard, "generateFieldGuard");
|
|
372
|
+
function escapeForTemplateLiteral(s) {
|
|
373
|
+
return s.replace(/`/g, "\\`").replace(/\$\{/g, "\\${");
|
|
374
|
+
}
|
|
375
|
+
__name(escapeForTemplateLiteral, "escapeForTemplateLiteral");
|
|
371
376
|
function sanitizeIdentifier(name) {
|
|
372
377
|
let sanitized = name.replace(/[^a-zA-Z0-9_]/g, "_");
|
|
373
378
|
if (/^[0-9]/.test(sanitized)) {
|
|
@@ -380,14 +385,18 @@ function normalizeName(name) {
|
|
|
380
385
|
return name.toLowerCase().replace(/[_-]/g, "");
|
|
381
386
|
}
|
|
382
387
|
__name(normalizeName, "normalizeName");
|
|
383
|
-
function generateFuzzyProxy(targetVarName, contextName) {
|
|
384
|
-
const safeContextName = JSON.stringify(contextName);
|
|
388
|
+
function generateFuzzyProxy(targetVarName, contextName, helpString) {
|
|
389
|
+
const safeContextName = escapeForTemplateLiteral(JSON.stringify(contextName));
|
|
390
|
+
const safeHelp = helpString ? escapeForTemplateLiteral(helpString) : "";
|
|
385
391
|
return `new Proxy(${targetVarName}, {
|
|
386
392
|
get(target, prop) {
|
|
387
393
|
if (typeof prop !== 'string') return undefined;
|
|
388
394
|
|
|
389
|
-
//
|
|
390
|
-
if (prop
|
|
395
|
+
// Block prototype pollution vectors
|
|
396
|
+
if (prop === '__proto__' || prop === 'constructor' || prop === 'prototype') return undefined;
|
|
397
|
+
|
|
398
|
+
// Fast-path: exact match \u2014 use hasOwnProperty to avoid prototype chain leaks
|
|
399
|
+
if (Object.prototype.hasOwnProperty.call(target, prop)) return target[prop];
|
|
391
400
|
|
|
392
401
|
// Fuzzy match: normalize and search
|
|
393
402
|
const normalizedProp = prop.toLowerCase().replace(/[_-]/g, '');
|
|
@@ -398,9 +407,9 @@ function generateFuzzyProxy(targetVarName, contextName) {
|
|
|
398
407
|
}
|
|
399
408
|
}
|
|
400
409
|
|
|
401
|
-
// No match found - throw helpful error
|
|
410
|
+
// No match found - throw helpful error with parameter signatures
|
|
402
411
|
const available = Object.keys(target).join(', ');
|
|
403
|
-
throw new TypeError(\`Property "\${prop}" not found on ${safeContextName}. Available: \${available}\`);
|
|
412
|
+
throw new TypeError(\`Property "\${prop}" not found on ${safeContextName}. Available: \${available}${safeHelp ? "\\nAPI: " + safeHelp : ""}\`);
|
|
404
413
|
}
|
|
405
414
|
})`;
|
|
406
415
|
}
|
|
@@ -464,6 +473,16 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
464
473
|
const safeServerName = JSON.stringify(serverName);
|
|
465
474
|
const safeToolName = JSON.stringify(tool.name);
|
|
466
475
|
lines.push(` ${methodName}: async (${inputParam}): Promise<unknown> => {`);
|
|
476
|
+
if (hasInput && requiredParams.length > 0) {
|
|
477
|
+
const paramList = JSON.stringify(requiredParams);
|
|
478
|
+
const schemaStr = escapeForTemplateLiteral("{" + requiredParams.join(", ") + (optionalParams.length > 0 ? ", " + optionalParams.map((p) => p + "?").join(", ") : "") + "}");
|
|
479
|
+
lines.push(` for (const __p of ${paramList}) {`);
|
|
480
|
+
lines.push(` if (!input || !(__p in input)) {`);
|
|
481
|
+
lines.push(` const __got = input ? Object.keys(input).join(', ') : 'none';`);
|
|
482
|
+
lines.push(` throw new Error(\`[${escapeForTemplateLiteral(safeServerName)}.${escapeForTemplateLiteral(safeToolName)}] Missing required parameter "\${__p}". Got: \${__got}. Expected: ${schemaStr}\`);`);
|
|
483
|
+
lines.push(` }`);
|
|
484
|
+
lines.push(` }`);
|
|
485
|
+
}
|
|
467
486
|
lines.push(` const response = await fetch('http://127.0.0.1:${bridgePort}/call', {`);
|
|
468
487
|
lines.push(` method: 'POST',`);
|
|
469
488
|
lines.push(` headers: { 'Content-Type': 'application/json' },`);
|
|
@@ -473,16 +492,17 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
473
492
|
lines.push(` args: ${inputArg},`);
|
|
474
493
|
lines.push(` }),`);
|
|
475
494
|
lines.push(` });`);
|
|
495
|
+
const tlSafe = /* @__PURE__ */ __name((s) => escapeForTemplateLiteral(s), "tlSafe");
|
|
476
496
|
lines.push(` if (!response.ok) {`);
|
|
477
|
-
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] HTTP \${response.status}: \${response.statusText}\`);`);
|
|
497
|
+
lines.push(` throw new Error(\`[${tlSafe(safeServerName)}.${tlSafe(safeToolName)}] HTTP \${response.status}: \${response.statusText}\`);`);
|
|
478
498
|
lines.push(` }`);
|
|
479
499
|
lines.push(` const data = await response.json() as { success: boolean; content?: unknown; error?: string; isError?: boolean };`);
|
|
480
500
|
lines.push(` if (!data.success) {`);
|
|
481
|
-
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] \${data.error || 'Tool call failed'}\`);`);
|
|
501
|
+
lines.push(` throw new Error(\`[${tlSafe(safeServerName)}.${tlSafe(safeToolName)}] \${data.error || 'Tool call failed'}\`);`);
|
|
482
502
|
lines.push(` }`);
|
|
483
503
|
lines.push(` if (data.isError) {`);
|
|
484
504
|
lines.push(` const errText = Array.isArray(data.content) && data.content[0]?.text ? data.content[0].text : 'Tool returned isError';`);
|
|
485
|
-
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] \${errText}\`);`);
|
|
505
|
+
lines.push(` throw new Error(\`[${tlSafe(safeServerName)}.${tlSafe(safeToolName)}] \${errText}\`);`);
|
|
486
506
|
lines.push(` }`);
|
|
487
507
|
lines.push(` // Auto-parse JSON from MCP text content blocks for convenience`);
|
|
488
508
|
lines.push(` const content = data.content;`);
|
|
@@ -575,7 +595,14 @@ function generateServerModule(tools, serverName, bridgePort = 3e3, variableNameO
|
|
|
575
595
|
}
|
|
576
596
|
lines.push("};");
|
|
577
597
|
lines.push("");
|
|
578
|
-
|
|
598
|
+
const helpParts = tools.map((t) => {
|
|
599
|
+
const allProps = Object.keys(t.inputSchema?.properties ?? {});
|
|
600
|
+
const req = t.inputSchema?.required ?? [];
|
|
601
|
+
const params = [...req, ...allProps.filter((k) => !req.includes(k)).map((p) => p + "?")];
|
|
602
|
+
return `${sanitizeIdentifier(t.name)}(${params.length > 0 ? "{" + params.join(", ") + "}" : ""})`;
|
|
603
|
+
});
|
|
604
|
+
const helpString = helpParts.join(", ");
|
|
605
|
+
lines.push(`const ${namespaceName} = ${generateFuzzyProxy(`${namespaceName}_raw`, serverName, helpString)};`);
|
|
579
606
|
lines.push("");
|
|
580
607
|
return lines.join("\n");
|
|
581
608
|
}
|
|
@@ -919,6 +946,7 @@ globalThis.mcp = {
|
|
|
919
946
|
return {
|
|
920
947
|
output: result.stdout,
|
|
921
948
|
error: result.stderr || void 0,
|
|
949
|
+
exitCode: result.exitCode,
|
|
922
950
|
durationMs: Date.now() - startTime
|
|
923
951
|
};
|
|
924
952
|
} catch (execError) {
|
|
@@ -961,9 +989,9 @@ globalThis.mcp = {
|
|
|
961
989
|
});
|
|
962
990
|
child.on("close", (code) => {
|
|
963
991
|
if (code === 0) {
|
|
964
|
-
resolve({ stdout, stderr: stderr || null });
|
|
992
|
+
resolve({ stdout, stderr: stderr || null, exitCode: 0 });
|
|
965
993
|
} else {
|
|
966
|
-
resolve({ stdout, stderr: stderr || `Process exited with code ${code}
|
|
994
|
+
resolve({ stdout, stderr: stderr || `Process exited with code ${code}`, exitCode: code ?? 1 });
|
|
967
995
|
}
|
|
968
996
|
});
|
|
969
997
|
child.on("error", (error) => {
|
|
@@ -1442,6 +1470,72 @@ var MCPBridge = class {
|
|
|
1442
1470
|
// dist/types/execution.js
|
|
1443
1471
|
var DEFAULT_TIMEOUT_MS = 3e4;
|
|
1444
1472
|
|
|
1473
|
+
// dist/tools/tool-catalog.js
|
|
1474
|
+
import { readFileSync, writeFileSync, mkdirSync } from "fs";
|
|
1475
|
+
import { join as join2, dirname } from "path";
|
|
1476
|
+
import { homedir } from "os";
|
|
1477
|
+
var CATALOG_PATH = join2(homedir(), ".meta-mcp", "tool-catalog.json");
|
|
1478
|
+
function loadCatalog() {
|
|
1479
|
+
try {
|
|
1480
|
+
const data = readFileSync(CATALOG_PATH, "utf-8");
|
|
1481
|
+
return JSON.parse(data);
|
|
1482
|
+
} catch {
|
|
1483
|
+
return { servers: {}, updatedAt: (/* @__PURE__ */ new Date()).toISOString() };
|
|
1484
|
+
}
|
|
1485
|
+
}
|
|
1486
|
+
__name(loadCatalog, "loadCatalog");
|
|
1487
|
+
function saveCatalog(catalog) {
|
|
1488
|
+
try {
|
|
1489
|
+
mkdirSync(dirname(CATALOG_PATH), { recursive: true });
|
|
1490
|
+
writeFileSync(CATALOG_PATH, JSON.stringify(catalog, null, 2), "utf-8");
|
|
1491
|
+
} catch {
|
|
1492
|
+
}
|
|
1493
|
+
}
|
|
1494
|
+
__name(saveCatalog, "saveCatalog");
|
|
1495
|
+
function updateCatalogForServer(serverName, tools) {
|
|
1496
|
+
const catalog = loadCatalog();
|
|
1497
|
+
catalog.servers[serverName] = tools.map((t) => {
|
|
1498
|
+
const allProps = Object.keys(t.inputSchema?.properties ?? {});
|
|
1499
|
+
const req = t.inputSchema?.required ?? [];
|
|
1500
|
+
return {
|
|
1501
|
+
name: t.name,
|
|
1502
|
+
required: req,
|
|
1503
|
+
optional: allProps.filter((k) => !req.includes(k)),
|
|
1504
|
+
description: t.description ? t.description.slice(0, 60) : void 0
|
|
1505
|
+
};
|
|
1506
|
+
});
|
|
1507
|
+
catalog.updatedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
1508
|
+
saveCatalog(catalog);
|
|
1509
|
+
}
|
|
1510
|
+
__name(updateCatalogForServer, "updateCatalogForServer");
|
|
1511
|
+
function buildCatalogString() {
|
|
1512
|
+
const catalog = loadCatalog();
|
|
1513
|
+
const servers = Object.entries(catalog.servers);
|
|
1514
|
+
if (servers.length === 0)
|
|
1515
|
+
return "";
|
|
1516
|
+
const lines = [
|
|
1517
|
+
"",
|
|
1518
|
+
"",
|
|
1519
|
+
"Tool API Reference (use EXACT names and parameters):"
|
|
1520
|
+
];
|
|
1521
|
+
for (const [server, tools] of servers) {
|
|
1522
|
+
const toolStrs = tools.map((t) => {
|
|
1523
|
+
const params = [
|
|
1524
|
+
...t.required,
|
|
1525
|
+
...t.optional.map((p) => p + "?")
|
|
1526
|
+
];
|
|
1527
|
+
return `${t.name}(${params.length > 0 ? "{" + params.join(", ") + "}" : ""})`;
|
|
1528
|
+
});
|
|
1529
|
+
lines.push(` ${server}: ${toolStrs.join(", ")}`);
|
|
1530
|
+
}
|
|
1531
|
+
lines.push("");
|
|
1532
|
+
lines.push("IMPORTANT: Use ONLY the exact tool and parameter names above. Do NOT guess.");
|
|
1533
|
+
lines.push('Inside this sandbox, use serverName.toolName({params}) or mcp["server-name"].toolName({params}).');
|
|
1534
|
+
lines.push("Do NOT use mcp__server__tool() syntax \u2014 that is the protocol layer, not the sandbox API.");
|
|
1535
|
+
return lines.join("\n");
|
|
1536
|
+
}
|
|
1537
|
+
__name(buildCatalogString, "buildCatalogString");
|
|
1538
|
+
|
|
1445
1539
|
// dist/tools/execute-with-wrappers.js
|
|
1446
1540
|
var executeCodeWithWrappersTool = {
|
|
1447
1541
|
name: "execute_code_with_wrappers",
|
|
@@ -1492,7 +1586,8 @@ __name(buildServerListString, "buildServerListString");
|
|
|
1492
1586
|
function createExecuteCodeWithWrappersToolDefinition() {
|
|
1493
1587
|
const baseDescription = 'Execute TypeScript/JavaScript code with auto-generated typed wrappers for specified MCP servers. Provides a typed API like github.createIssue({ title: "..." }) instead of raw mcp.callTool(). Multi-line code is supported - format naturally for readability.';
|
|
1494
1588
|
const serverList = buildServerListString();
|
|
1495
|
-
const
|
|
1589
|
+
const catalogNote = buildCatalogString();
|
|
1590
|
+
const environmentNote = '\n\nExecution environment: Node.js (not browser). Top-level await is supported.\n- Server namespaces are pre-injected: use serverName.toolName({params}) directly\n- mcp is the server dictionary: mcp["server-name"].toolName({params}) for dynamic lookup\n- DO NOT use mcp__server__tool() syntax \u2014 that is the MCP protocol layer, not the sandbox API\n- DO NOT guess tool or parameter names \u2014 use ONLY exact names from the API reference below\n- Available globals: fetch, console, process, Buffer, setTimeout, clearTimeout\n- import/export NOT supported \u2014 modules are pre-injected as namespace variables\n- DO NOT use require(), __dirname, __filename, or browser APIs' + catalogNote;
|
|
1496
1591
|
return {
|
|
1497
1592
|
name: "execute_code_with_wrappers",
|
|
1498
1593
|
description: baseDescription + serverList + environmentNote,
|
|
@@ -1573,14 +1668,14 @@ function wrapUserCodeForReturnCapture(code) {
|
|
|
1573
1668
|
if (/^(const|let|var|function\s|class\s|import\s|export\s|return\b|throw\b|if\s*\(|else\b|for\s*[\({]|while\s*\(|do\s*\{|switch\s*\(|try\s*\{|catch\s*\(|finally\s*\{|break\b|continue\b)/.test(lastTrimmed)) {
|
|
1574
1669
|
return code;
|
|
1575
1670
|
}
|
|
1576
|
-
if (lines.length > 1 && /^[}\])]/.test(lastTrimmed))
|
|
1671
|
+
if (lines.length > 1 && /^[}\])\.\[?]/.test(lastTrimmed))
|
|
1577
1672
|
return code;
|
|
1578
1673
|
const expr = lastTrimmed.replace(/;$/, "");
|
|
1579
1674
|
const indent = lines[lastIdx].match(/^(\s*)/)?.[1] ?? "";
|
|
1580
|
-
lines[lastIdx] = `${indent}const
|
|
1581
|
-
${indent}if (
|
|
1582
|
-
${indent} const
|
|
1583
|
-
${indent} process.stdout.write(
|
|
1675
|
+
lines[lastIdx] = `${indent}const __mcp_exec_capture__ = await Promise.resolve(${expr});
|
|
1676
|
+
${indent}if (__mcp_exec_capture__ !== undefined) {
|
|
1677
|
+
${indent} const __mcp_exec_out__ = typeof __mcp_exec_capture__ === 'string' ? __mcp_exec_capture__ : JSON.stringify(__mcp_exec_capture__, null, 2);
|
|
1678
|
+
${indent} process.stdout.write(__mcp_exec_out__ + '\\n');
|
|
1584
1679
|
${indent}}`;
|
|
1585
1680
|
return lines.join("\n");
|
|
1586
1681
|
}
|
|
@@ -1653,6 +1748,7 @@ function createExecuteWithWrappersHandler(pool, config = {}) {
|
|
|
1653
1748
|
reject(err);
|
|
1654
1749
|
});
|
|
1655
1750
|
});
|
|
1751
|
+
updateCatalogForServer(serverName, tools);
|
|
1656
1752
|
const uniqueName = uniqueNameMap.get(serverName) ?? sanitizeIdentifier2(serverName);
|
|
1657
1753
|
const moduleCode = generateServerModule(tools, serverName, actualPort, uniqueName);
|
|
1658
1754
|
wrapperModules.push(moduleCode);
|
|
@@ -1712,7 +1808,7 @@ function formatResult(result) {
|
|
|
1712
1808
|
lines.push(`[stderr]: ${result.error}`);
|
|
1713
1809
|
}
|
|
1714
1810
|
lines.push(`[Execution completed in ${result.durationMs}ms]`);
|
|
1715
|
-
const hasError = !!result.error;
|
|
1811
|
+
const hasError = result.exitCode !== void 0 ? result.exitCode !== 0 : !!result.error;
|
|
1716
1812
|
return {
|
|
1717
1813
|
content: [{ type: "text", text: lines.join("\n") }],
|
|
1718
1814
|
isError: hasError
|
|
@@ -1751,12 +1847,13 @@ function createMcpExecServer(pool, config = {}) {
|
|
|
1751
1847
|
const listServersHandler = createListServersHandler();
|
|
1752
1848
|
const getToolSchemaHandler = createGetToolSchemaHandler(pool);
|
|
1753
1849
|
const { handler: executeWithWrappersHandler, stopActiveBridge } = createExecuteWithWrappersHandler(pool, config.handlerConfig);
|
|
1754
|
-
const
|
|
1850
|
+
const staticTools = [
|
|
1755
1851
|
listAvailableMcpServersTool,
|
|
1756
|
-
getMcpToolSchemaTool
|
|
1757
|
-
createExecuteCodeWithWrappersToolDefinition()
|
|
1852
|
+
getMcpToolSchemaTool
|
|
1758
1853
|
];
|
|
1759
|
-
const listToolsHandler = /* @__PURE__ */ __name(async () => ({
|
|
1854
|
+
const listToolsHandler = /* @__PURE__ */ __name(async () => ({
|
|
1855
|
+
tools: [...staticTools, createExecuteCodeWithWrappersToolDefinition()]
|
|
1856
|
+
}), "listToolsHandler");
|
|
1760
1857
|
const callToolRequestHandler = /* @__PURE__ */ __name(async (params) => {
|
|
1761
1858
|
const { name, arguments: args2 = {} } = params;
|
|
1762
1859
|
switch (name) {
|
|
@@ -1825,7 +1922,7 @@ __name(createMcpExecServer, "createMcpExecServer");
|
|
|
1825
1922
|
// dist/index.js
|
|
1826
1923
|
import { ServerPool, createConnection, getServerConfig as getServerConfig2, loadServerManifest as loadServerManifest2, cleanupOrphanedProcesses } from "@justanothermldude/meta-mcp-core";
|
|
1827
1924
|
var APP_NAME = "mcp-exec";
|
|
1828
|
-
var VERSION2 = "1.
|
|
1925
|
+
var VERSION2 = "1.6.0";
|
|
1829
1926
|
var defaultExecutor = null;
|
|
1830
1927
|
function getDefaultExecutor() {
|
|
1831
1928
|
if (!defaultExecutor) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/sandbox/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAO1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAA8B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAErF;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,qBAA0B;IAM/C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBjC;;;OAGG;IACH,OAAO,CAAC,cAAc;IA0CtB;;;;;;OAMG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/sandbox/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAO1F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAA8B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAErF;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,qBAA0B;IAM/C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBjC;;;OAGG;IACH,OAAO,CAAC,cAAc;IA0CtB;;;;;;OAMG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAwFxE;;OAEG;IACH,OAAO,CAAC,cAAc;IAwCtB;;OAEG;YACW,OAAO;IAYrB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,SAAS,IAAI,oBAAoB;IAIjC;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI;CAK9D"}
|
package/dist/sandbox/executor.js
CHANGED
|
@@ -95,8 +95,6 @@ globalThis.mcp = {
|
|
|
95
95
|
// Generate unique temp file names
|
|
96
96
|
const fileId = randomUUID();
|
|
97
97
|
const tsFilePath = join(this.tempDir, `${fileId}.ts`);
|
|
98
|
-
// Use .mjs so Node.js always treats output as ESM (enables top-level await).
|
|
99
|
-
// Without this, .js files in /tmp default to CJS where top-level await is a SyntaxError.
|
|
100
98
|
const jsFilePath = join(this.tempDir, `${fileId}.mjs`);
|
|
101
99
|
// Prepend MCP helper preamble to user code
|
|
102
100
|
const fullCode = this.getMcpPreamble() + code;
|
|
@@ -128,6 +126,7 @@ globalThis.mcp = {
|
|
|
128
126
|
return {
|
|
129
127
|
output: result.stdout,
|
|
130
128
|
error: result.stderr || undefined,
|
|
129
|
+
exitCode: result.exitCode,
|
|
131
130
|
durationMs: Date.now() - startTime,
|
|
132
131
|
};
|
|
133
132
|
}
|
|
@@ -175,10 +174,10 @@ globalThis.mcp = {
|
|
|
175
174
|
});
|
|
176
175
|
child.on('close', (code) => {
|
|
177
176
|
if (code === 0) {
|
|
178
|
-
resolve({ stdout, stderr: stderr || null });
|
|
177
|
+
resolve({ stdout, stderr: stderr || null, exitCode: 0 });
|
|
179
178
|
}
|
|
180
179
|
else {
|
|
181
|
-
resolve({ stdout, stderr: stderr || `Process exited with code ${code}
|
|
180
|
+
resolve({ stdout, stderr: stderr || `Process exited with code ${code}`, exitCode: code ?? 1 });
|
|
182
181
|
}
|
|
183
182
|
});
|
|
184
183
|
child.on('error', (error) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/sandbox/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAA6B,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,0BAA0B,EAA8B,MAAM,aAAa,CAAC;AAErF;;GAEG;AACH,MAAM,OAAO,eAAe;IAM1B,YAAY,UAAiC,EAAE;QAHvC,gBAAW,GAAY,KAAK,CAAC;QAInC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,+BAA+B;QAC/B,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/C,4CAA4C;QAC5C,MAAM,cAAc,CAAC,UAAU,CAC7B,IAAI,CAAC,MAAM,EACX,SAAS,EAAE,oCAAoC;QAC/C,IAAI,CAAC,cAAc,CAAC,gBAAgB,IAAI,KAAK,CAC9C,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACK,cAAc;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,IAAI,IAAI,CAAC;QAC7D,OAAO;;;;;;;;;;;;;;;;;;;;;;;;qDAwB0C,UAAU;;;;;;;;;;;;;CAa9D,CAAC;IACA,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,SAAiB;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,gCAAgC;QAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,kCAAkC;QAClC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,KAAK,CAAC,CAAC;QACtD,
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/sandbox/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,cAAc,EAA6B,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,0BAA0B,EAA8B,MAAM,aAAa,CAAC;AAErF;;GAEG;AACH,MAAM,OAAO,eAAe;IAM1B,YAAY,UAAiC,EAAE;QAHvC,gBAAW,GAAY,KAAK,CAAC;QAInC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,+BAA+B;QAC/B,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/C,4CAA4C;QAC5C,MAAM,cAAc,CAAC,UAAU,CAC7B,IAAI,CAAC,MAAM,EACX,SAAS,EAAE,oCAAoC;QAC/C,IAAI,CAAC,cAAc,CAAC,gBAAgB,IAAI,KAAK,CAC9C,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACK,cAAc;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,IAAI,IAAI,CAAC;QAC7D,OAAO;;;;;;;;;;;;;;;;;;;;;;;;qDAwB0C,UAAU;;;;;;;;;;;;;CAa9D,CAAC;IACA,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,SAAiB;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,gCAAgC;QAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QAED,kCAAkC;QAClC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,KAAK,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC;QAEvD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC;QAE9C,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE/C,mDAAmD;YACnD,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,EAAE;gBACzC,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;YAEH,8BAA8B;YAC9B,MAAM,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAEtD,iDAAiD;YACjD,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,IAAI,CAAC;gBACH,wBAAwB;gBACxB,MAAM,WAAW,GAAG,SAAS,UAAU,GAAG,CAAC;gBAC3C,MAAM,gBAAgB,GAAG,MAAM,cAAc,CAAC,eAAe,CAC3D,WAAW,EACX,SAAS,EAAE,oBAAoB;gBAC/B,SAAS,EAAE,qBAAqB;gBAChC,eAAe,CAAC,MAAM,CACvB,CAAC;gBAEF,gCAAgC;gBAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;gBAEnF,YAAY,CAAC,SAAS,CAAC,CAAC;gBAExB,OAAO;oBACL,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,KAAK,EAAE,MAAM,CAAC,MAAM,IAAI,SAAS;oBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;iBACnC,CAAC;YACJ,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACnB,YAAY,CAAC,SAAS,CAAC,CAAC;gBAExB,kCAAkC;gBAClC,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnC,OAAO;wBACL,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,6BAA6B,SAAS,IAAI;wBACjD,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;qBACnC,CAAC;gBACJ,CAAC;gBAED,kDAAkD;gBAClD,MAAM,YAAY,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACxF,MAAM,cAAc,GAAG,cAAc,CAAC,iCAAiC,CACrE,SAAS,UAAU,GAAG,EACtB,YAAY,CACb,CAAC;gBAEF,OAAO;oBACL,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,cAAc;oBACrB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;iBACnC,CAAC;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,qBAAqB;YACrB,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CACpB,OAAe,EACf,WAAwB;QAExB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;gBACzC,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC1E,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC3D,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,4BAA4B,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjG,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAChC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtB,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBACzC,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,OAAO,CAAC,GAAG,SAAmB;QAC1C,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,wBAAwB;YAC1B,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,cAAc,CAAC,iBAAiB,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,mBAAmB;QACjB,OAAO,cAAc,CAAC,mBAAmB,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,SAAyC;QACpD,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,SAAS,EAAE,CAAC;QAC/D,IAAI,CAAC,MAAM,GAAG,0BAA0B,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9D,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;CACF"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAGL,cAAc,EAEf,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAUL,KAAK,gCAAgC,EACtC,MAAM,kBAAkB,CAAC;AAI1B,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,aAAa,CAAC,EAAE,gCAAgC,CAAC;CAClD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,GAAE,mBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAGL,cAAc,EAEf,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAUL,KAAK,gCAAgC,EACtC,MAAM,kBAAkB,CAAC;AAI1B,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,aAAa,CAAC,EAAE,gCAAgC,CAAC;CAClD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,GAAE,mBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAmC1E,cAAc,KACrB,OAAO,CAAC,cAAc,CAAC;;EAuE3B"}
|
package/dist/server.js
CHANGED
|
@@ -28,13 +28,16 @@ export function createMcpExecServer(pool, config = {}) {
|
|
|
28
28
|
const getToolSchemaHandler = createGetToolSchemaHandler(pool);
|
|
29
29
|
// Create the execute_code_with_wrappers handler with the pool
|
|
30
30
|
const { handler: executeWithWrappersHandler, stopActiveBridge } = createExecuteWithWrappersHandler(pool, config.handlerConfig);
|
|
31
|
-
//
|
|
32
|
-
const
|
|
31
|
+
// Static tools (never change)
|
|
32
|
+
const staticTools = [
|
|
33
33
|
listAvailableMcpServersTool,
|
|
34
34
|
getMcpToolSchemaTool,
|
|
35
|
-
createExecuteCodeWithWrappersToolDefinition(),
|
|
36
35
|
];
|
|
37
|
-
|
|
36
|
+
// Rebuild execute_code_with_wrappers definition on each request
|
|
37
|
+
// so it includes the latest disk-cached tool catalog
|
|
38
|
+
const listToolsHandler = async () => ({
|
|
39
|
+
tools: [...staticTools, createExecuteCodeWithWrappersToolDefinition()],
|
|
40
|
+
});
|
|
38
41
|
const callToolRequestHandler = async (params) => {
|
|
39
42
|
const { name, arguments: args = {} } = params;
|
|
40
43
|
switch (name) {
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GAGvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,2CAA2C,EAC3C,gCAAgC,EAChC,0BAA0B,GAE3B,MAAM,kBAAkB,CAAC;AAE1B,MAAM,OAAO,GAAG,OAAO,CAAC;AAYxB;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAgB,EAAE,SAA8B,EAAE;IACpF,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE;YACZ,KAAK,EAAE,EAAE;SACV;KACF,CACF,CAAC;IAEF,gDAAgD;IAChD,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;IAEtD,uDAAuD;IACvD,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAE9D,8DAA8D;IAC9D,MAAM,EAAE,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,GAAG,gCAAgC,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IAE/H,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute-with-wrappers.d.ts","sourceRoot":"","sources":["../../src/tools/execute-with-wrappers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,kCAAkC,CAAC;AAGlF,OAAO,EAAmB,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"execute-with-wrappers.d.ts","sourceRoot":"","sources":["../../src/tools/execute-with-wrappers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,kCAAkC,CAAC;AAGlF,OAAO,EAAmB,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;CAyBvC,CAAC;AAgCF;;GAEG;AACH,wBAAgB,2CAA2C;;;;;;;;;;;;;;;;;;;;;;;;EA4C1D;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,6CAA6C;IAC7C,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,uCAAuC;IACvC,YAAY,CAAC,EAAE,eAAe,CAAC;CAChC;AAoDD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,wBAAwB,CAU1F;AAwDD;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,UAAU,EAChB,MAAM,GAAE,gCAAqC;oBA0BrC,wBAAwB,KAC7B,OAAO,CAAC,cAAc,CAAC;4BAhBS,OAAO,CAAC,IAAI,CAAC;EAiKjD"}
|
|
@@ -3,6 +3,7 @@ import { generateServerModule, generateMcpDictionaryFromMap } from '../codegen/i
|
|
|
3
3
|
import { SandboxExecutor } from '../sandbox/index.js';
|
|
4
4
|
import { MCPBridge } from '../bridge/index.js';
|
|
5
5
|
import { DEFAULT_TIMEOUT_MS } from '../types/execution.js';
|
|
6
|
+
import { updateCatalogForServer, buildCatalogString } from './tool-catalog.js';
|
|
6
7
|
/**
|
|
7
8
|
* MCP Tool definition for execute_code_with_wrappers (static fallback)
|
|
8
9
|
*/
|
|
@@ -66,13 +67,16 @@ export function createExecuteCodeWithWrappersToolDefinition() {
|
|
|
66
67
|
'Provides a typed API like github.createIssue({ title: "..." }) instead of raw mcp.callTool(). ' +
|
|
67
68
|
'Multi-line code is supported - format naturally for readability.';
|
|
68
69
|
const serverList = buildServerListString();
|
|
70
|
+
const catalogNote = buildCatalogString();
|
|
69
71
|
const environmentNote = '\n\nExecution environment: Node.js (not browser). Top-level await is supported.\n' +
|
|
70
|
-
'-
|
|
71
|
-
'-
|
|
72
|
-
'-
|
|
73
|
-
'-
|
|
74
|
-
'-
|
|
75
|
-
'-
|
|
72
|
+
'- Server namespaces are pre-injected: use serverName.toolName({params}) directly\n' +
|
|
73
|
+
'- mcp is the server dictionary: mcp["server-name"].toolName({params}) for dynamic lookup\n' +
|
|
74
|
+
'- DO NOT use mcp__server__tool() syntax — that is the MCP protocol layer, not the sandbox API\n' +
|
|
75
|
+
'- DO NOT guess tool or parameter names — use ONLY exact names from the API reference below\n' +
|
|
76
|
+
'- Available globals: fetch, console, process, Buffer, setTimeout, clearTimeout\n' +
|
|
77
|
+
'- import/export NOT supported — modules are pre-injected as namespace variables\n' +
|
|
78
|
+
'- DO NOT use require(), __dirname, __filename, or browser APIs' +
|
|
79
|
+
catalogNote;
|
|
76
80
|
return {
|
|
77
81
|
name: 'execute_code_with_wrappers',
|
|
78
82
|
description: baseDescription + serverList + environmentNote,
|
|
@@ -172,7 +176,7 @@ function wrapUserCodeForReturnCapture(code) {
|
|
|
172
176
|
if (!trimmed)
|
|
173
177
|
return code;
|
|
174
178
|
// If the code ends with } it closes a block statement — nothing to capture.
|
|
175
|
-
// This single check handles try/catch, if/else, loops, functions,
|
|
179
|
+
// This single check handles try/catch, if/else, loops, functions, etc.
|
|
176
180
|
if (trimmed.replace(/;+$/, '').endsWith('}'))
|
|
177
181
|
return code;
|
|
178
182
|
// Find last non-empty, non-comment line
|
|
@@ -191,17 +195,17 @@ function wrapUserCodeForReturnCapture(code) {
|
|
|
191
195
|
if (/^(const|let|var|function\s|class\s|import\s|export\s|return\b|throw\b|if\s*\(|else\b|for\s*[\({]|while\s*\(|do\s*\{|switch\s*\(|try\s*\{|catch\s*\(|finally\s*\{|break\b|continue\b)/.test(lastTrimmed)) {
|
|
192
196
|
return code;
|
|
193
197
|
}
|
|
194
|
-
//
|
|
195
|
-
//
|
|
196
|
-
|
|
197
|
-
if (lines.length > 1 && /^[}\])]/.test(lastTrimmed))
|
|
198
|
+
// Skip multi-line continuations: closing brackets, method chains, index access
|
|
199
|
+
// These indicate the last line is a continuation of a prior expression, not standalone
|
|
200
|
+
if (lines.length > 1 && /^[}\])\.\[?]/.test(lastTrimmed))
|
|
198
201
|
return code;
|
|
199
202
|
const expr = lastTrimmed.replace(/;$/, '');
|
|
200
203
|
const indent = lines[lastIdx].match(/^(\s*)/)?.[1] ?? '';
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
${indent}
|
|
204
|
-
${indent}
|
|
204
|
+
// Use collision-resistant variable name to avoid shadowing user code
|
|
205
|
+
lines[lastIdx] = `${indent}const __mcp_exec_capture__ = await Promise.resolve(${expr});
|
|
206
|
+
${indent}if (__mcp_exec_capture__ !== undefined) {
|
|
207
|
+
${indent} const __mcp_exec_out__ = typeof __mcp_exec_capture__ === 'string' ? __mcp_exec_capture__ : JSON.stringify(__mcp_exec_capture__, null, 2);
|
|
208
|
+
${indent} process.stdout.write(__mcp_exec_out__ + '\\n');
|
|
205
209
|
${indent}}`;
|
|
206
210
|
return lines.join('\n');
|
|
207
211
|
}
|
|
@@ -290,6 +294,8 @@ export function createExecuteWithWrappersHandler(pool, config = {}) {
|
|
|
290
294
|
}, TOOLS_FETCH_TIMEOUT_MS);
|
|
291
295
|
conn.getTools().then((result) => { clearTimeout(timeoutHandle); resolve(result); }, (err) => { clearTimeout(timeoutHandle); reject(err); });
|
|
292
296
|
});
|
|
297
|
+
// Cache tools to disk for catalog embedding in tool description
|
|
298
|
+
updateCatalogForServer(serverName, tools);
|
|
293
299
|
// Get the collision-aware variable name for this server
|
|
294
300
|
const uniqueName = uniqueNameMap.get(serverName) ?? sanitizeIdentifier(serverName);
|
|
295
301
|
// Generate TypeScript module for this server with actual port and unique variable name
|
|
@@ -360,13 +366,14 @@ function formatResult(result) {
|
|
|
360
366
|
if (result.output.length > 0) {
|
|
361
367
|
lines.push(...result.output);
|
|
362
368
|
}
|
|
363
|
-
// Add
|
|
369
|
+
// Add stderr if present (may be warnings even on success)
|
|
364
370
|
if (result.error) {
|
|
365
371
|
lines.push(`[stderr]: ${result.error}`);
|
|
366
372
|
}
|
|
367
373
|
// Add execution time
|
|
368
374
|
lines.push(`[Execution completed in ${result.durationMs}ms]`);
|
|
369
|
-
|
|
375
|
+
// Use exit code for error determination — stderr alone (e.g. deprecation warnings) is not an error
|
|
376
|
+
const hasError = result.exitCode !== undefined ? result.exitCode !== 0 : !!result.error;
|
|
370
377
|
return {
|
|
371
378
|
content: [{ type: 'text', text: lines.join('\n') }],
|
|
372
379
|
isError: hasError,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute-with-wrappers.js","sourceRoot":"","sources":["../../src/tools/execute-with-wrappers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"execute-with-wrappers.js","sourceRoot":"","sources":["../../src/tools/execute-with-wrappers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAE,eAAe,EAA8B,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,SAAS,EAAwB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAwB,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AA8B/E;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,IAAI,EAAE,4BAA4B;IAClC,WAAW,EACT,mGAAmG;QACnG,gGAAgG;QAChG,kEAAkE;IACpE,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2FAA2F;aACzG;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,0DAA0D;aACxE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oDAAoD,kBAAkB,GAAG;aACvF;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;KAC/B;CACF,CAAC;AAEF;;GAEG;AACH,SAAS,qBAAqB;IAC5B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,2DAA2D;QAC3D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAChD,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,IAAI,gBAAgB,CAAC;YAC/C,OAAO,OAAO,CAAC,CAAC,IAAI,MAAM,IAAI,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QAEhE,OAAO;;EAET,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO;;2GAEyE,CAAC;IAC1G,CAAC;IAAC,MAAM,CAAC;QACP,kCAAkC;QAClC,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2CAA2C;IACzD,MAAM,eAAe,GACnB,mGAAmG;QACnG,gGAAgG;QAChG,kEAAkE,CAAC;IAErE,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAE3C,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;IAEzC,MAAM,eAAe,GACnB,mFAAmF;QACnF,oFAAoF;QACpF,4FAA4F;QAC5F,iGAAiG;QACjG,8FAA8F;QAC9F,kFAAkF;QAClF,mFAAmF;QACnF,gEAAgE;QAChE,WAAW,CAAC;IAEd,OAAO;QACL,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE,eAAe,GAAG,UAAU,GAAG,eAAe;QAC3D,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2FAA2F;iBACzG;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,0DAA0D;iBACxE;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oDAAoD,kBAAkB,GAAG;iBACvF;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;SAC/B;KACF,CAAC;AACJ,CAAC;AAYD;;;GAGG;AACH,SAAS,kBAAkB,CAAC,IAAY;IACtC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAC5C,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IACd,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,KAAe;IACzC,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEzD,sDAAsD;IACtD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,+DAA+D;IAC/D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,oCAAoC;YACpC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAa;IACtD,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACb,MAAM,IAAI,IAAI;QACd,OAAQ,IAAiC,CAAC,IAAI,KAAK,QAAQ;QAC3D,UAAU,IAAI,IAAI;QAClB,KAAK,CAAC,OAAO,CAAE,IAAiC,CAAC,QAAQ,CAAC;QACzD,IAAiC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAChF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,4BAA4B,CAAC,IAAY;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,4EAA4E;IAC5E,uEAAuE;IACvE,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1D,wCAAwC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/B,OAAO,OAAO,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM;QACjF,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7B,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAE1C,6CAA6C;IAC7C,IAAI,sLAAsL,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7M,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+EAA+E;IAC/E,uFAAuF;IACvF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAEtE,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEzD,qEAAqE;IACrE,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,MAAM,sDAAsD,IAAI;EACpF,MAAM;EACN,MAAM;EACN,MAAM;EACN,MAAM,GAAG,CAAC;IAEV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC9C,IAAgB,EAChB,SAA2C,EAAE;IAE7C,4EAA4E;IAC5E,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,EAAE,IAAI,IAAI,IAAI,CAAC;IAExD,gFAAgF;IAChF,IAAI,YAAY,GAAqB,IAAI,CAAC;IAE1C;;OAEG;IACH,KAAK,UAAU,gBAAgB;QAC7B,IAAI,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,2CAA2C;YAC7C,CAAC;QACH,CAAC;QACD,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,UAAU,0BAA0B,CACvC,IAA8B;QAE9B,MAAM,sBAAsB,GAAG,KAAK,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,GAAG,kBAAkB,EAAE,GAAG,IAAI,CAAC;QAEjE,iBAAiB;QACjB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wDAAwD,EAAE,CAAC;gBAC3F,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uEAAuE,EAAE,CAAC;gBAC1G,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6DAA6D,EAAE,CAAC;gBAChG,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC;YACpF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6CAA6C,EAAE,CAAC;gBAChF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,GAA2B,IAAI,CAAC;QAE1C,+DAA+D;QAC/D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE;YACjC,GAAG,MAAM,CAAC,YAAY;YACtB,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;QACH,YAAY,GAAG,MAAM,CAAC;QAEtB,IAAI,CAAC;YACH,0DAA0D;YAC1D,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YAEpC,qEAAqE;YACrE,MAAM,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAEnD,8EAA8E;YAC9E,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;gBAClC,IAAI,UAAqC,CAAC;gBAC1C,IAAI,CAAC;oBACH,iCAAiC;oBACjC,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;oBAClD,MAAM,IAAI,GAAG,UAAU,CAAC;oBAExB,0DAA0D;oBAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAiD,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;wBAClG,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;4BACpC,MAAM,CACJ,IAAI,KAAK,CACP,yCAAyC,UAAU,WAAW,sBAAsB,IAAI,CACzF,CACF,CAAC;wBACJ,CAAC,EAAE,sBAAsB,CAAC,CAAC;wBAE3B,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAClB,CAAC,MAAM,EAAE,EAAE,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAC7D,CAAC,GAAY,EAAE,EAAE,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAChE,CAAC;oBACJ,CAAC,CAAC,CAAC;oBAEH,gEAAgE;oBAChE,sBAAsB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBAE1C,wDAAwD;oBACxD,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,CAAC;oBAEnF,uFAAuF;oBACvF,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;oBACnF,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAEhC,kCAAkC;oBAClC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBACrC,CAAC;gBAAC,OAAO,WAAW,EAAE,CAAC;oBACrB,MAAM,YAAY,GAAG,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC9F,sFAAsF;oBACtF,2EAA2E;oBAC3E,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;wBAC7B,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBACrC,CAAC;oBACD,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;oBACpB,YAAY,GAAG,IAAI,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wCAAwC,UAAU,MAAM,YAAY,EAAE,EAAE,CAAC;wBACzG,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,uFAAuF;YACvF,MAAM,iBAAiB,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtD,MAAM,aAAa,GAAG,4BAA4B,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAC5E,MAAM,gBAAgB,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,GAAG,iBAAiB,OAAO,aAAa,OAAO,gBAAgB,EAAE,CAAC;YAEnF,sEAAsE;YACtE,MAAM,aAAa,GAA0B;gBAC3C,GAAG,MAAM,CAAC,aAAa;gBACvB,aAAa,EAAE,UAAU;aAC1B,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;YAEpD,kCAAkC;YAClC,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAEtD,iCAAiC;YACjC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,YAAY,GAAG,IAAI,CAAC;YAEpB,mCAAmC;YACnC,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oCAAoC;YACpC,IAAI,CAAC;gBACH,IAAI,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;oBACvB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACtB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,wBAAwB;YAC1B,CAAC;YACD,YAAY,GAAG,IAAI,CAAC;YAEpB,uCAAuC;YACvC,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,MAAuB;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,aAAa;IACb,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,0DAA0D;IAC1D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,qBAAqB;IACrB,KAAK,CAAC,IAAI,CAAC,2BAA2B,MAAM,CAAC,UAAU,KAAK,CAAC,CAAC;IAE9D,mGAAmG;IACnG,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAExF,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,QAAQ;KAClB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,YAAoB,EAAE,aAAqC;IACpF,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,kCAAkC;IAClC,IAAI,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,oBAAoB;IACpB,KAAK,CAAC,IAAI,CAAC,UAAU,YAAY,EAAE,CAAC,CAAC;IAErC,4BAA4B;IAC5B,IAAI,aAAa,EAAE,UAAU,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,2BAA2B,aAAa,CAAC,UAAU,KAAK,CAAC,CAAC;IACvE,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
interface CatalogEntry {
|
|
2
|
+
name: string;
|
|
3
|
+
required: string[];
|
|
4
|
+
optional: string[];
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
interface ToolCatalog {
|
|
8
|
+
servers: Record<string, CatalogEntry[]>;
|
|
9
|
+
updatedAt: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Load catalog from disk. Returns empty catalog if file doesn't exist or is corrupt.
|
|
13
|
+
*/
|
|
14
|
+
export declare function loadCatalog(): ToolCatalog;
|
|
15
|
+
/**
|
|
16
|
+
* Update the catalog for a single server after tool discovery.
|
|
17
|
+
* Called as a side-effect of execute_code_with_wrappers.
|
|
18
|
+
*/
|
|
19
|
+
export declare function updateCatalogForServer(serverName: string, tools: {
|
|
20
|
+
name: string;
|
|
21
|
+
description?: string;
|
|
22
|
+
inputSchema?: {
|
|
23
|
+
required?: string[];
|
|
24
|
+
properties?: Record<string, unknown>;
|
|
25
|
+
};
|
|
26
|
+
}[]): void;
|
|
27
|
+
/**
|
|
28
|
+
* Build compact catalog string for embedding in the tool description.
|
|
29
|
+
* Format: server: tool1({param1, param2?}), tool2(), ...
|
|
30
|
+
*/
|
|
31
|
+
export declare function buildCatalogString(): string;
|
|
32
|
+
/**
|
|
33
|
+
* Build a help string for a specific server's tools (for FuzzyProxy error messages).
|
|
34
|
+
* Includes parameter signatures so the LLM knows how to fix a wrong tool name.
|
|
35
|
+
*/
|
|
36
|
+
export declare function buildServerHelpString(tools: {
|
|
37
|
+
name: string;
|
|
38
|
+
inputSchema?: {
|
|
39
|
+
required?: string[];
|
|
40
|
+
properties?: Record<string, unknown>;
|
|
41
|
+
};
|
|
42
|
+
}[]): string;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=tool-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-catalog.d.ts","sourceRoot":"","sources":["../../src/tools/tool-catalog.ts"],"names":[],"mappings":"AAYA,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB;AAID;;GAEG;AACH,wBAAgB,WAAW,IAAI,WAAW,CAOzC;AAcD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,EAAE,GAC3H,IAAI,CAcN;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAyB3C;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,EAAE,GACrG,MAAM,CAUR"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Disk-persisted tool catalog for MCP servers.
|
|
3
|
+
* Caches tool names + parameter signatures so the LLM sees exact API
|
|
4
|
+
* in the tool description before writing any code.
|
|
5
|
+
*
|
|
6
|
+
* Updated as a side-effect of every execute_code_with_wrappers call.
|
|
7
|
+
* Loaded on startup — stale data is better than no data.
|
|
8
|
+
*/
|
|
9
|
+
import { readFileSync, writeFileSync, mkdirSync } from 'fs';
|
|
10
|
+
import { join, dirname } from 'path';
|
|
11
|
+
import { homedir } from 'os';
|
|
12
|
+
const CATALOG_PATH = join(homedir(), '.meta-mcp', 'tool-catalog.json');
|
|
13
|
+
/**
|
|
14
|
+
* Load catalog from disk. Returns empty catalog if file doesn't exist or is corrupt.
|
|
15
|
+
*/
|
|
16
|
+
export function loadCatalog() {
|
|
17
|
+
try {
|
|
18
|
+
const data = readFileSync(CATALOG_PATH, 'utf-8');
|
|
19
|
+
return JSON.parse(data);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return { servers: {}, updatedAt: new Date().toISOString() };
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Write catalog to disk. Non-fatal on failure — catalog is best-effort.
|
|
27
|
+
*/
|
|
28
|
+
function saveCatalog(catalog) {
|
|
29
|
+
try {
|
|
30
|
+
mkdirSync(dirname(CATALOG_PATH), { recursive: true });
|
|
31
|
+
writeFileSync(CATALOG_PATH, JSON.stringify(catalog, null, 2), 'utf-8');
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
// Non-fatal
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Update the catalog for a single server after tool discovery.
|
|
39
|
+
* Called as a side-effect of execute_code_with_wrappers.
|
|
40
|
+
*/
|
|
41
|
+
export function updateCatalogForServer(serverName, tools) {
|
|
42
|
+
const catalog = loadCatalog();
|
|
43
|
+
catalog.servers[serverName] = tools.map(t => {
|
|
44
|
+
const allProps = Object.keys(t.inputSchema?.properties ?? {});
|
|
45
|
+
const req = t.inputSchema?.required ?? [];
|
|
46
|
+
return {
|
|
47
|
+
name: t.name,
|
|
48
|
+
required: req,
|
|
49
|
+
optional: allProps.filter(k => !req.includes(k)),
|
|
50
|
+
description: t.description ? t.description.slice(0, 60) : undefined,
|
|
51
|
+
};
|
|
52
|
+
});
|
|
53
|
+
catalog.updatedAt = new Date().toISOString();
|
|
54
|
+
saveCatalog(catalog);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Build compact catalog string for embedding in the tool description.
|
|
58
|
+
* Format: server: tool1({param1, param2?}), tool2(), ...
|
|
59
|
+
*/
|
|
60
|
+
export function buildCatalogString() {
|
|
61
|
+
const catalog = loadCatalog();
|
|
62
|
+
const servers = Object.entries(catalog.servers);
|
|
63
|
+
if (servers.length === 0)
|
|
64
|
+
return '';
|
|
65
|
+
const lines = [
|
|
66
|
+
'',
|
|
67
|
+
'',
|
|
68
|
+
'Tool API Reference (use EXACT names and parameters):',
|
|
69
|
+
];
|
|
70
|
+
for (const [server, tools] of servers) {
|
|
71
|
+
const toolStrs = tools.map(t => {
|
|
72
|
+
const params = [
|
|
73
|
+
...t.required,
|
|
74
|
+
...t.optional.map(p => p + '?'),
|
|
75
|
+
];
|
|
76
|
+
return `${t.name}(${params.length > 0 ? '{' + params.join(', ') + '}' : ''})`;
|
|
77
|
+
});
|
|
78
|
+
lines.push(` ${server}: ${toolStrs.join(', ')}`);
|
|
79
|
+
}
|
|
80
|
+
lines.push('');
|
|
81
|
+
lines.push('IMPORTANT: Use ONLY the exact tool and parameter names above. Do NOT guess.');
|
|
82
|
+
lines.push('Inside this sandbox, use serverName.toolName({params}) or mcp["server-name"].toolName({params}).');
|
|
83
|
+
lines.push('Do NOT use mcp__server__tool() syntax — that is the protocol layer, not the sandbox API.');
|
|
84
|
+
return lines.join('\n');
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Build a help string for a specific server's tools (for FuzzyProxy error messages).
|
|
88
|
+
* Includes parameter signatures so the LLM knows how to fix a wrong tool name.
|
|
89
|
+
*/
|
|
90
|
+
export function buildServerHelpString(tools) {
|
|
91
|
+
return tools.map(t => {
|
|
92
|
+
const allProps = Object.keys(t.inputSchema?.properties ?? {});
|
|
93
|
+
const req = t.inputSchema?.required ?? [];
|
|
94
|
+
const params = [
|
|
95
|
+
...req,
|
|
96
|
+
...allProps.filter(k => !req.includes(k)).map(p => p + '?'),
|
|
97
|
+
];
|
|
98
|
+
return `${t.name}(${params.length > 0 ? '{' + params.join(', ') + '}' : ''})`;
|
|
99
|
+
}).join(', ');
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=tool-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-catalog.js","sourceRoot":"","sources":["../../src/tools/tool-catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,8 @@ export interface ExecutionResult {
|
|
|
15
15
|
output: string[];
|
|
16
16
|
/** Error message if execution failed */
|
|
17
17
|
error?: string;
|
|
18
|
+
/** Process exit code (0 = success). Undefined if process was killed/timed out. */
|
|
19
|
+
exitCode?: number;
|
|
18
20
|
/** Execution duration in milliseconds */
|
|
19
21
|
durationMs: number;
|
|
20
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/types/execution.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/types/execution.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/types/execution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/types/execution.ts"],"names":[],"mappings":"AAwBA;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC"}
|