@justanothermldude/mcp-exec 1.3.5 → 1.4.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/bridge/server.d.ts.map +1 -1
- package/dist/bridge/server.js +83 -36
- package/dist/bridge/server.js.map +1 -1
- package/dist/codegen/index.d.ts +1 -1
- package/dist/codegen/index.d.ts.map +1 -1
- package/dist/codegen/index.js +1 -1
- package/dist/codegen/index.js.map +1 -1
- package/dist/codegen/wrapper-generator.d.ts +13 -1
- package/dist/codegen/wrapper-generator.d.ts.map +1 -1
- package/dist/codegen/wrapper-generator.js +186 -19
- package/dist/codegen/wrapper-generator.js.map +1 -1
- package/dist/index.js +359 -83
- package/dist/server.d.ts +1 -1
- package/dist/server.js +2 -2
- package/dist/server.js.map +1 -1
- package/dist/tools/execute-with-wrappers.d.ts +29 -1
- package/dist/tools/execute-with-wrappers.d.ts.map +1 -1
- package/dist/tools/execute-with-wrappers.js +147 -46
- package/dist/tools/execute-with-wrappers.js.map +1 -1
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list-servers.d.ts.map +1 -1
- package/dist/tools/list-servers.js +51 -2
- package/dist/tools/list-servers.js.map +1 -1
- package/package.json +1 -1
|
@@ -10,12 +10,30 @@ const BRIDGE_ENDPOINT = 'http://127.0.0.1:3000/call';
|
|
|
10
10
|
* Convert a JSON Schema type to TypeScript type
|
|
11
11
|
* @param prop - JSON Schema property definition
|
|
12
12
|
* @param required - Whether the property is required
|
|
13
|
+
* @param definitions - Root schema definitions for $ref resolution
|
|
14
|
+
* @param visited - Set of already-visited $ref keys to prevent cycles
|
|
13
15
|
* @returns TypeScript type string
|
|
14
16
|
*/
|
|
15
|
-
function jsonSchemaToTs(prop, _required = true) {
|
|
17
|
+
function jsonSchemaToTs(prop, _required = true, definitions, visited = new Set()) {
|
|
16
18
|
if (!prop) {
|
|
17
19
|
return 'unknown';
|
|
18
20
|
}
|
|
21
|
+
// Handle $ref
|
|
22
|
+
if (prop.$ref) {
|
|
23
|
+
const refKey = prop.$ref.replace(/^#\/(definitions|\$defs)\//, '');
|
|
24
|
+
if (definitions && refKey in definitions) {
|
|
25
|
+
if (visited.has(refKey))
|
|
26
|
+
return 'unknown'; // break cycle
|
|
27
|
+
const nextVisited = new Set(visited);
|
|
28
|
+
nextVisited.add(refKey);
|
|
29
|
+
return jsonSchemaToTs(definitions[refKey], _required, definitions, nextVisited);
|
|
30
|
+
}
|
|
31
|
+
return 'unknown';
|
|
32
|
+
}
|
|
33
|
+
// Handle const keyword
|
|
34
|
+
if ('const' in prop && prop.const !== undefined) {
|
|
35
|
+
return JSON.stringify(prop.const);
|
|
36
|
+
}
|
|
19
37
|
// Handle array of types (e.g., ["string", "null"])
|
|
20
38
|
if (Array.isArray(prop.type)) {
|
|
21
39
|
const types = prop.type.map((t) => primitiveToTs(t));
|
|
@@ -25,23 +43,80 @@ function jsonSchemaToTs(prop, _required = true) {
|
|
|
25
43
|
if (prop.enum) {
|
|
26
44
|
return prop.enum.map((v) => JSON.stringify(v)).join(' | ');
|
|
27
45
|
}
|
|
46
|
+
// Handle oneOf
|
|
47
|
+
if (prop.oneOf) {
|
|
48
|
+
const types = prop.oneOf
|
|
49
|
+
.map((s) => jsonSchemaToTs(s, _required, definitions, visited))
|
|
50
|
+
.filter((t) => t !== 'unknown');
|
|
51
|
+
if (types.length > 0) {
|
|
52
|
+
return types.join(' | ');
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
// Handle anyOf
|
|
56
|
+
if (prop.anyOf) {
|
|
57
|
+
const types = prop.anyOf
|
|
58
|
+
.map((s) => jsonSchemaToTs(s, _required, definitions, visited))
|
|
59
|
+
.filter((t) => t !== 'unknown');
|
|
60
|
+
if (types.length > 0) {
|
|
61
|
+
return types.join(' | ');
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Handle allOf
|
|
65
|
+
if (prop.allOf) {
|
|
66
|
+
const types = prop.allOf
|
|
67
|
+
.map((s) => jsonSchemaToTs(s, _required, definitions, visited))
|
|
68
|
+
.filter((t) => t !== 'unknown');
|
|
69
|
+
if (types.length > 0) {
|
|
70
|
+
const primitives = ['string', 'number', 'boolean', 'null'];
|
|
71
|
+
const incompatible = types.filter(t => primitives.includes(t)).length > 1;
|
|
72
|
+
if (incompatible)
|
|
73
|
+
return 'unknown';
|
|
74
|
+
return types.join(' & ');
|
|
75
|
+
}
|
|
76
|
+
}
|
|
28
77
|
// Handle object types with properties
|
|
29
78
|
if (prop.type === 'object' && prop.properties) {
|
|
30
79
|
const propLines = Object.entries(prop.properties).map(([key, value]) => {
|
|
31
80
|
const isRequired = prop.required?.includes(key) ?? false;
|
|
32
|
-
const tsType = jsonSchemaToTs(value, isRequired);
|
|
81
|
+
const tsType = jsonSchemaToTs(value, isRequired, definitions, visited);
|
|
33
82
|
const optionalMark = isRequired ? '' : '?';
|
|
34
83
|
return `${key}${optionalMark}: ${tsType}`;
|
|
35
84
|
});
|
|
85
|
+
// Handle additionalProperties
|
|
86
|
+
if (prop.additionalProperties === true) {
|
|
87
|
+
propLines.push('[key: string]: unknown');
|
|
88
|
+
}
|
|
89
|
+
else if (typeof prop.additionalProperties === 'object' && prop.additionalProperties !== null) {
|
|
90
|
+
// When named properties are present, the index signature must be a supertype of all
|
|
91
|
+
// named property types. Using `unknown` is always valid and avoids TS4023 errors
|
|
92
|
+
// (e.g., `id?: number` incompatible with `[key: string]: string`).
|
|
93
|
+
propLines.push('[key: string]: unknown');
|
|
94
|
+
}
|
|
95
|
+
else if (Object.keys(prop.properties).length === 0 && !prop.additionalProperties) {
|
|
96
|
+
// If no properties and no additionalProperties, return Record type
|
|
97
|
+
return 'Record<string, unknown>';
|
|
98
|
+
}
|
|
36
99
|
return `{ ${propLines.join('; ')} }`;
|
|
37
100
|
}
|
|
101
|
+
// Handle object type without properties
|
|
102
|
+
if (prop.type === 'object') {
|
|
103
|
+
if (prop.additionalProperties === true || (typeof prop.additionalProperties === 'object' && prop.additionalProperties !== null)) {
|
|
104
|
+
return 'Record<string, unknown>';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
38
107
|
// Handle array types
|
|
39
108
|
if (prop.type === 'array') {
|
|
40
|
-
const itemType = prop.items ? jsonSchemaToTs(prop.items, true) : 'unknown';
|
|
109
|
+
const itemType = prop.items ? jsonSchemaToTs(prop.items, true, definitions, visited) : 'unknown';
|
|
41
110
|
return `${itemType}[]`;
|
|
42
111
|
}
|
|
43
|
-
|
|
44
|
-
|
|
112
|
+
let result = primitiveToTs(prop.type ?? 'unknown');
|
|
113
|
+
// Handle nullable: true (OpenAPI 3.0 style)
|
|
114
|
+
if (prop.nullable === true) {
|
|
115
|
+
if (result !== 'unknown' && !result.includes('| null') && !result.includes('null |')) {
|
|
116
|
+
result = `${result} | null`;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return result;
|
|
45
120
|
}
|
|
46
121
|
/**
|
|
47
122
|
* Convert JSON Schema primitive type to TypeScript
|
|
@@ -69,9 +144,11 @@ function primitiveToTs(type) {
|
|
|
69
144
|
* Generate TypeScript interface from JSON Schema
|
|
70
145
|
* @param name - Interface name
|
|
71
146
|
* @param schema - JSON Schema object
|
|
147
|
+
* @param definitions - Root schema definitions for $ref resolution
|
|
72
148
|
* @returns TypeScript interface definition
|
|
73
149
|
*/
|
|
74
|
-
function generateInterface(name, schema) {
|
|
150
|
+
function generateInterface(name, schema, definitions) {
|
|
151
|
+
const defs = definitions || schema.definitions;
|
|
75
152
|
if (!schema.properties || Object.keys(schema.properties).length === 0) {
|
|
76
153
|
return `interface ${name} {}`;
|
|
77
154
|
}
|
|
@@ -81,7 +158,7 @@ function generateInterface(name, schema) {
|
|
|
81
158
|
const prop = propValue;
|
|
82
159
|
const isRequired = schema.required?.includes(propName) ?? false;
|
|
83
160
|
const optionalMark = isRequired ? '' : '?';
|
|
84
|
-
const tsType = jsonSchemaToTs(prop, isRequired);
|
|
161
|
+
const tsType = jsonSchemaToTs(prop, isRequired, defs);
|
|
85
162
|
// Add JSDoc if description exists
|
|
86
163
|
if (prop.description) {
|
|
87
164
|
lines.push(` /** ${sanitizeJsDoc(prop.description)} */`);
|
|
@@ -215,12 +292,13 @@ function toPascalCase(name) {
|
|
|
215
292
|
/**
|
|
216
293
|
* Generate interface definition for a tool (if it has input properties)
|
|
217
294
|
* @param tool - Tool definition from MCP server
|
|
295
|
+
* @param rootDefinitions - Root schema definitions for $ref resolution
|
|
218
296
|
* @returns Interface definition string or empty string
|
|
219
297
|
*/
|
|
220
|
-
function generateToolInterface(tool) {
|
|
298
|
+
function generateToolInterface(tool, rootDefinitions) {
|
|
221
299
|
const interfaceName = `${toPascalCase(tool.name)}Input`;
|
|
222
300
|
if (tool.inputSchema?.properties && Object.keys(tool.inputSchema.properties).length > 0) {
|
|
223
|
-
return generateInterface(interfaceName, tool.inputSchema);
|
|
301
|
+
return generateInterface(interfaceName, tool.inputSchema, rootDefinitions);
|
|
224
302
|
}
|
|
225
303
|
return '';
|
|
226
304
|
}
|
|
@@ -240,6 +318,19 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
240
318
|
const inputParam = hasInput ? `input: ${interfaceName}` : '';
|
|
241
319
|
const inputArg = hasInput ? 'input' : '{}';
|
|
242
320
|
const lines = [];
|
|
321
|
+
// Collect required and optional params for summary
|
|
322
|
+
const requiredParams = [];
|
|
323
|
+
const optionalParams = [];
|
|
324
|
+
if (tool.inputSchema?.properties) {
|
|
325
|
+
for (const propName of Object.keys(tool.inputSchema.properties)) {
|
|
326
|
+
if (tool.inputSchema.required?.includes(propName)) {
|
|
327
|
+
requiredParams.push(propName);
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
optionalParams.push(propName);
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
}
|
|
243
334
|
// Add JSDoc comment
|
|
244
335
|
if (tool.description) {
|
|
245
336
|
lines.push(' /**');
|
|
@@ -247,11 +338,27 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
247
338
|
if (tool.inputSchema?.properties) {
|
|
248
339
|
for (const [propName, propValue] of Object.entries(tool.inputSchema.properties)) {
|
|
249
340
|
const prop = propValue;
|
|
341
|
+
const isRequired = tool.inputSchema.required?.includes(propName) ?? false;
|
|
342
|
+
const marker = isRequired ? '[required]' : '[optional]';
|
|
250
343
|
if (prop.description) {
|
|
251
|
-
lines.push(` * @param input.${propName} - ${sanitizeJsDoc(prop.description)}`);
|
|
344
|
+
lines.push(` * @param input.${propName} ${marker} - ${sanitizeJsDoc(prop.description)}`);
|
|
252
345
|
}
|
|
346
|
+
else {
|
|
347
|
+
lines.push(` * @param input.${propName} ${marker}`);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
// Add required/optional summary
|
|
352
|
+
if (requiredParams.length > 0 || optionalParams.length > 0) {
|
|
353
|
+
lines.push(` * Required: ${requiredParams.length > 0 ? requiredParams.join(', ') : 'none'}`);
|
|
354
|
+
if (optionalParams.length > 0) {
|
|
355
|
+
lines.push(` * Optional: ${optionalParams.join(', ')}`);
|
|
253
356
|
}
|
|
254
357
|
}
|
|
358
|
+
// Add @returns hint
|
|
359
|
+
const safeServerName = JSON.stringify(serverName);
|
|
360
|
+
const safeToolName = JSON.stringify(tool.name);
|
|
361
|
+
lines.push(` * @returns Promise<unknown>. To inspect response shape: get_mcp_tool_schema({ server: ${safeServerName}, tool: ${safeToolName} })`);
|
|
255
362
|
lines.push(' */');
|
|
256
363
|
}
|
|
257
364
|
// Escape server/tool names to prevent code injection via malicious names
|
|
@@ -268,15 +375,15 @@ function generateMethodDefinition(tool, serverName, bridgePort) {
|
|
|
268
375
|
lines.push(` }),`);
|
|
269
376
|
lines.push(` });`);
|
|
270
377
|
lines.push(` if (!response.ok) {`);
|
|
271
|
-
lines.push(
|
|
378
|
+
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] HTTP \${response.status}: \${response.statusText}\`);`);
|
|
272
379
|
lines.push(` }`);
|
|
273
380
|
lines.push(` const data = await response.json() as { success: boolean; content?: unknown; error?: string; isError?: boolean };`);
|
|
274
381
|
lines.push(` if (!data.success) {`);
|
|
275
|
-
lines.push(` throw new Error(data.error || 'Tool call failed');`);
|
|
382
|
+
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] \${data.error || 'Tool call failed'}\`);`);
|
|
276
383
|
lines.push(` }`);
|
|
277
384
|
lines.push(` if (data.isError) {`);
|
|
278
385
|
lines.push(` const errText = Array.isArray(data.content) && data.content[0]?.text ? data.content[0].text : 'Tool returned isError';`);
|
|
279
|
-
lines.push(` throw new Error(errText);`);
|
|
386
|
+
lines.push(` throw new Error(\`[${safeServerName}.${safeToolName}] \${errText}\`);`);
|
|
280
387
|
lines.push(` }`);
|
|
281
388
|
lines.push(` // Auto-parse JSON from MCP text content blocks for convenience`);
|
|
282
389
|
lines.push(` const content = data.content;`);
|
|
@@ -357,11 +464,12 @@ export function generateToolWrapper(tool, serverName) {
|
|
|
357
464
|
* @param tools - Array of tool definitions
|
|
358
465
|
* @param serverName - Name of the MCP server
|
|
359
466
|
* @param bridgePort - Port for the MCP bridge (default: 3000)
|
|
467
|
+
* @param variableNameOverride - Optional override for the namespace variable name
|
|
360
468
|
* @returns TypeScript code string with namespace object
|
|
361
469
|
*/
|
|
362
|
-
export function generateServerModule(tools, serverName, bridgePort = 3000) {
|
|
470
|
+
export function generateServerModule(tools, serverName, bridgePort = 3000, variableNameOverride) {
|
|
363
471
|
const lines = [];
|
|
364
|
-
const namespaceName = sanitizeIdentifier(serverName);
|
|
472
|
+
const namespaceName = variableNameOverride ?? sanitizeIdentifier(serverName);
|
|
365
473
|
// File header comment
|
|
366
474
|
lines.push('/**');
|
|
367
475
|
lines.push(` * Auto-generated TypeScript wrappers for ${serverName} MCP server tools.`);
|
|
@@ -373,7 +481,8 @@ export function generateServerModule(tools, serverName, bridgePort = 3000) {
|
|
|
373
481
|
lines.push(generateFieldGuard());
|
|
374
482
|
// Generate all interfaces first
|
|
375
483
|
for (const tool of tools) {
|
|
376
|
-
const
|
|
484
|
+
const rootDefs = tool.inputSchema?.definitions ?? tool.inputSchema?.$defs;
|
|
485
|
+
const interfaceCode = generateToolInterface(tool, rootDefs);
|
|
377
486
|
if (interfaceCode) {
|
|
378
487
|
lines.push(interfaceCode);
|
|
379
488
|
lines.push('');
|
|
@@ -393,15 +502,73 @@ export function generateServerModule(tools, serverName, bridgePort = 3000) {
|
|
|
393
502
|
lines.push('');
|
|
394
503
|
return lines.join('\n');
|
|
395
504
|
}
|
|
505
|
+
/**
|
|
506
|
+
* Generate MCP dictionary from a pre-computed name map.
|
|
507
|
+
* Keys: original server names. Values: unique variable names used in generateServerModule.
|
|
508
|
+
*
|
|
509
|
+
* @param serverNames - Array of original server names
|
|
510
|
+
* @param nameMap - Map of original server name → variable name
|
|
511
|
+
* @returns TypeScript code string with mcp dictionary
|
|
512
|
+
*/
|
|
513
|
+
export function generateMcpDictionaryFromMap(serverNames, nameMap) {
|
|
514
|
+
const lines = [];
|
|
515
|
+
lines.push('/**');
|
|
516
|
+
lines.push(' * MCP Server Dictionary - Access all MCP servers via case-agnostic lookup.');
|
|
517
|
+
lines.push(` * Available: ${serverNames.map((n) => `mcp['${n}']`).join(', ')}`);
|
|
518
|
+
lines.push(' */');
|
|
519
|
+
lines.push('');
|
|
520
|
+
lines.push('const mcp_servers_raw: Record<string, unknown> = {');
|
|
521
|
+
for (const serverName of serverNames) {
|
|
522
|
+
const varName = nameMap.get(serverName) ?? sanitizeIdentifier(serverName);
|
|
523
|
+
lines.push(` ${JSON.stringify(serverName)}: ${varName},`);
|
|
524
|
+
}
|
|
525
|
+
lines.push('};');
|
|
526
|
+
lines.push('');
|
|
527
|
+
lines.push(`const mcp = ${generateFuzzyProxy('mcp_servers_raw', 'mcp')};`);
|
|
528
|
+
lines.push('');
|
|
529
|
+
return lines.join('\n');
|
|
530
|
+
}
|
|
396
531
|
/**
|
|
397
532
|
* Generate the MCP dictionary code that maps server names to their namespace objects.
|
|
398
533
|
* Creates a case-agnostic `mcp` dictionary with fuzzy matching for server name resolution.
|
|
534
|
+
* Detects and resolves sanitized name collisions by appending numeric suffixes.
|
|
399
535
|
*
|
|
400
536
|
* @param serverNames - Array of original server names
|
|
401
537
|
* @returns TypeScript code string with mcp dictionary
|
|
538
|
+
* @deprecated Use generateMcpDictionaryFromMap instead to ensure name consistency with generateServerModule
|
|
402
539
|
*/
|
|
403
540
|
export function generateMcpDictionary(serverNames) {
|
|
404
541
|
const lines = [];
|
|
542
|
+
// Track sanitized names for collision detection
|
|
543
|
+
const sanitizedToOriginal = new Map();
|
|
544
|
+
const uniqueNames = new Map(); // original name -> unique variable name
|
|
545
|
+
// First pass: collect all sanitized names and detect collisions
|
|
546
|
+
for (let i = 0; i < serverNames.length; i++) {
|
|
547
|
+
const originalName = serverNames[i];
|
|
548
|
+
const sanitized = sanitizeIdentifier(originalName);
|
|
549
|
+
if (!sanitizedToOriginal.has(sanitized)) {
|
|
550
|
+
sanitizedToOriginal.set(sanitized, []);
|
|
551
|
+
}
|
|
552
|
+
sanitizedToOriginal.get(sanitized).push(originalName);
|
|
553
|
+
}
|
|
554
|
+
// Second pass: assign unique variable names, adding suffix on collision
|
|
555
|
+
let collisionIndex = 0;
|
|
556
|
+
for (const originalName of serverNames) {
|
|
557
|
+
const sanitized = sanitizeIdentifier(originalName);
|
|
558
|
+
const conflictingNames = sanitizedToOriginal.get(sanitized);
|
|
559
|
+
if (conflictingNames.length > 1) {
|
|
560
|
+
// Collision detected - use index suffix
|
|
561
|
+
const uniqueName = `${sanitized}_${collisionIndex}`;
|
|
562
|
+
uniqueNames.set(originalName, uniqueName);
|
|
563
|
+
lines.push(`// WARNING: Server name collision: '${originalName}' and previous server both sanitize to '${sanitized}'. Using '${uniqueName}'.`);
|
|
564
|
+
collisionIndex++;
|
|
565
|
+
}
|
|
566
|
+
else {
|
|
567
|
+
// No collision - use standard sanitized name
|
|
568
|
+
uniqueNames.set(originalName, sanitized);
|
|
569
|
+
}
|
|
570
|
+
}
|
|
571
|
+
lines.push('');
|
|
405
572
|
// Generate comment header with server list for AI discoverability
|
|
406
573
|
const sanitizedNames = serverNames.map(sanitizeIdentifier);
|
|
407
574
|
lines.push('/**');
|
|
@@ -410,12 +577,12 @@ export function generateMcpDictionary(serverNames) {
|
|
|
410
577
|
lines.push(` * Aliases: ${sanitizedNames.join(', ')}`);
|
|
411
578
|
lines.push(' */');
|
|
412
579
|
lines.push('');
|
|
413
|
-
// Create raw dictionary mapping original names to
|
|
580
|
+
// Create raw dictionary mapping original names to unique namespace variables
|
|
414
581
|
lines.push('const mcp_servers_raw: Record<string, unknown> = {');
|
|
415
582
|
for (const serverName of serverNames) {
|
|
416
|
-
const
|
|
583
|
+
const uniqueName = uniqueNames.get(serverName);
|
|
417
584
|
// Map original name to the namespace variable
|
|
418
|
-
lines.push(` ${JSON.stringify(serverName)}: ${
|
|
585
|
+
lines.push(` ${JSON.stringify(serverName)}: ${uniqueName},`);
|
|
419
586
|
}
|
|
420
587
|
lines.push('};');
|
|
421
588
|
lines.push('');
|
|
@@ -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":"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"}
|