@darkiceinteractive/mcp-conductor 3.0.0-beta.1 → 3.0.0-beta.2
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/http-server.d.ts +9 -0
- package/dist/bridge/http-server.d.ts.map +1 -1
- package/dist/bridge/http-server.js +21 -0
- package/dist/bridge/http-server.js.map +1 -1
- package/dist/cache/cache.d.ts +21 -0
- package/dist/cache/cache.d.ts.map +1 -1
- package/dist/cache/cache.js +44 -2
- package/dist/cache/cache.js.map +1 -1
- package/dist/daemon/client.d.ts +2 -0
- package/dist/daemon/client.d.ts.map +1 -1
- package/dist/daemon/client.js +16 -3
- package/dist/daemon/client.js.map +1 -1
- package/dist/daemon/server.d.ts.map +1 -1
- package/dist/daemon/server.js +29 -7
- package/dist/daemon/server.js.map +1 -1
- package/dist/runtime/executor.d.ts.map +1 -1
- package/dist/runtime/executor.js +45 -2
- package/dist/runtime/executor.js.map +1 -1
- package/dist/server/mcp-server.d.ts +2 -0
- package/dist/server/mcp-server.d.ts.map +1 -1
- package/dist/server/mcp-server.js +52 -19
- package/dist/server/mcp-server.js.map +1 -1
- package/dist/server/passthrough-registrar.d.ts +55 -5
- package/dist/server/passthrough-registrar.d.ts.map +1 -1
- package/dist/server/passthrough-registrar.js +104 -15
- package/dist/server/passthrough-registrar.js.map +1 -1
- package/dist/version.d.ts +3 -3
- package/dist/version.js +3 -3
- package/package.json +2 -2
|
@@ -55,6 +55,53 @@ export interface McpHubLike {
|
|
|
55
55
|
* Format: `<server>__<tool>` (double underscore separator).
|
|
56
56
|
*/
|
|
57
57
|
export declare function buildPassthroughToolName(server: string, tool: string): string;
|
|
58
|
+
/**
|
|
59
|
+
* Heuristic infer of MCP ToolAnnotations from a tool's name (HIGH-4 fix).
|
|
60
|
+
*
|
|
61
|
+
* MCP tool names overwhelmingly put verbs as prefixes (`delete_repository`,
|
|
62
|
+
* `read_file`, `list_issues`). The matcher is therefore prefix-based with a
|
|
63
|
+
* small suffix safety net for less-common name styles.
|
|
64
|
+
*
|
|
65
|
+
* Pattern groups (case-insensitive):
|
|
66
|
+
* - **destructive** verbs that mutate or remove state. Prefix:
|
|
67
|
+
* `delete_`, `remove_`, `create_`, `update_`, `send_`, `post_`, `put_`,
|
|
68
|
+
* `patch_`, `drop_`, `kill_`, `terminate_`, `revoke_`, `destroy_`,
|
|
69
|
+
* `set_`, `activate_`, `deactivate_`, `enable_`, `disable_`, `cancel_`.
|
|
70
|
+
* Suffix safety net: `_delete`, `_remove`, `_destroy`.
|
|
71
|
+
* → `{ readOnlyHint: false, destructiveHint: true, idempotentHint: false }`
|
|
72
|
+
* - **mutating but recoverable** verbs (write/save/upload):
|
|
73
|
+
* Prefix `save_`, `write_`, `upload_`; suffix `_save`, `_write`, `_upload`.
|
|
74
|
+
* → `{ readOnlyHint: false, destructiveHint: false, idempotentHint: false }`
|
|
75
|
+
* - **read-safe** (default): `get_`, `list_`, `search_`, `query_`, `read_`,
|
|
76
|
+
* `fetch_`, `find_`, `count_`, `check_`, plus everything that doesn't
|
|
77
|
+
* match the above.
|
|
78
|
+
* → `{ readOnlyHint: true, destructiveHint: false, idempotentHint: true }`
|
|
79
|
+
*
|
|
80
|
+
* `openWorldHint` defaults to `false` for all (passthrough tools are bounded
|
|
81
|
+
* by the upstream MCP server's tool surface).
|
|
82
|
+
*
|
|
83
|
+
* False negatives (a non-obvious destructive name marked safe) require an
|
|
84
|
+
* explicit upstream annotation; the deferred Phase-1 typegen extension will
|
|
85
|
+
* close that gap by carrying upstream annotations through `ToolDefinition`.
|
|
86
|
+
*/
|
|
87
|
+
export declare function inferAnnotationsFromName(toolName: string): {
|
|
88
|
+
readOnlyHint: boolean;
|
|
89
|
+
destructiveHint: boolean;
|
|
90
|
+
idempotentHint: boolean;
|
|
91
|
+
openWorldHint: boolean;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Conductor built-in tool names that are always registered by
|
|
95
|
+
* `MCPExecutorServer.registerTools()`. Any passthrough tool whose composed
|
|
96
|
+
* name matches one of these entries will be skipped to prevent duplicate-
|
|
97
|
+
* registration errors at the SDK level (CODE-LOW-4).
|
|
98
|
+
*
|
|
99
|
+
* Keep this set in sync with the `this.server.registerTool(name, ...)` calls
|
|
100
|
+
* in `mcp-server.ts`. The check uses the raw composed name (`server__tool`
|
|
101
|
+
* form) so a plain backend tool named `brave_web_search` registered under any
|
|
102
|
+
* server would collide with the conductor built-in of the same name.
|
|
103
|
+
*/
|
|
104
|
+
export declare const STATIC_TOOL_NAMES: ReadonlySet<string>;
|
|
58
105
|
/**
|
|
59
106
|
* Register all `routing: "passthrough"` tools from the registry as
|
|
60
107
|
* first-class MCP tools on `mcpServer`.
|
|
@@ -64,10 +111,13 @@ export declare function buildPassthroughToolName(server: string, tool: string):
|
|
|
64
111
|
* same server instance the SDK will throw a duplicate-name error, so callers
|
|
65
112
|
* must ensure it runs only once per server lifecycle.
|
|
66
113
|
*
|
|
67
|
-
* @param registry
|
|
68
|
-
* @param mcpServer
|
|
69
|
-
* @param mcpHub
|
|
70
|
-
* @
|
|
114
|
+
* @param registry Populated ToolRegistry (after `refresh()` has been called).
|
|
115
|
+
* @param mcpServer The McpServer instance to register tools on.
|
|
116
|
+
* @param mcpHub The MCPHub used to forward tool calls to backends.
|
|
117
|
+
* @param excludeNames Additional composed names to skip beyond the built-in
|
|
118
|
+
* {@link STATIC_TOOL_NAMES} set (e.g. names already
|
|
119
|
+
* registered by a previous call).
|
|
120
|
+
* @returns The number of passthrough tools registered.
|
|
71
121
|
*/
|
|
72
|
-
export declare function registerPassthroughTools(registry: ToolRegistry, mcpServer: McpServerLike, mcpHub: McpHubLike): number;
|
|
122
|
+
export declare function registerPassthroughTools(registry: ToolRegistry, mcpServer: McpServerLike, mcpHub: McpHubLike, excludeNames?: ReadonlySet<string>): number;
|
|
73
123
|
//# sourceMappingURL=passthrough-registrar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passthrough-registrar.d.ts","sourceRoot":"","sources":["../../src/server/passthrough-registrar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAG5D;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE;YACZ,YAAY,CAAC,EAAE,OAAO,CAAC;YACvB,eAAe,CAAC,EAAE,OAAO,CAAC;YAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;YACzB,aAAa,CAAC,EAAE,OAAO,CAAC;SACzB,CAAC;QACF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,EACD,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;QACpD,OAAO,EAAE,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C,CAAC,GACD,IAAI,CAAC;CACT;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAWD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED
|
|
1
|
+
{"version":3,"file":"passthrough-registrar.d.ts","sourceRoot":"","sources":["../../src/server/passthrough-registrar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAG5D;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE;YACZ,YAAY,CAAC,EAAE,OAAO,CAAC;YACvB,eAAe,CAAC,EAAE,OAAO,CAAC;YAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;YACzB,aAAa,CAAC,EAAE,OAAO,CAAC;SACzB,CAAC;QACF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,EACD,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;QACpD,OAAO,EAAE,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C,CAAC,GACD,IAAI,CAAC;CACT;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAWD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACxB,CAoBA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAyBhD,CAAC;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,UAAU,EAClB,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GACjC,MAAM,CAqFR"}
|
|
@@ -36,6 +36,89 @@ function sanitiseSegment(segment) {
|
|
|
36
36
|
export function buildPassthroughToolName(server, tool) {
|
|
37
37
|
return `${sanitiseSegment(server)}__${sanitiseSegment(tool)}`;
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Heuristic infer of MCP ToolAnnotations from a tool's name (HIGH-4 fix).
|
|
41
|
+
*
|
|
42
|
+
* MCP tool names overwhelmingly put verbs as prefixes (`delete_repository`,
|
|
43
|
+
* `read_file`, `list_issues`). The matcher is therefore prefix-based with a
|
|
44
|
+
* small suffix safety net for less-common name styles.
|
|
45
|
+
*
|
|
46
|
+
* Pattern groups (case-insensitive):
|
|
47
|
+
* - **destructive** verbs that mutate or remove state. Prefix:
|
|
48
|
+
* `delete_`, `remove_`, `create_`, `update_`, `send_`, `post_`, `put_`,
|
|
49
|
+
* `patch_`, `drop_`, `kill_`, `terminate_`, `revoke_`, `destroy_`,
|
|
50
|
+
* `set_`, `activate_`, `deactivate_`, `enable_`, `disable_`, `cancel_`.
|
|
51
|
+
* Suffix safety net: `_delete`, `_remove`, `_destroy`.
|
|
52
|
+
* → `{ readOnlyHint: false, destructiveHint: true, idempotentHint: false }`
|
|
53
|
+
* - **mutating but recoverable** verbs (write/save/upload):
|
|
54
|
+
* Prefix `save_`, `write_`, `upload_`; suffix `_save`, `_write`, `_upload`.
|
|
55
|
+
* → `{ readOnlyHint: false, destructiveHint: false, idempotentHint: false }`
|
|
56
|
+
* - **read-safe** (default): `get_`, `list_`, `search_`, `query_`, `read_`,
|
|
57
|
+
* `fetch_`, `find_`, `count_`, `check_`, plus everything that doesn't
|
|
58
|
+
* match the above.
|
|
59
|
+
* → `{ readOnlyHint: true, destructiveHint: false, idempotentHint: true }`
|
|
60
|
+
*
|
|
61
|
+
* `openWorldHint` defaults to `false` for all (passthrough tools are bounded
|
|
62
|
+
* by the upstream MCP server's tool surface).
|
|
63
|
+
*
|
|
64
|
+
* False negatives (a non-obvious destructive name marked safe) require an
|
|
65
|
+
* explicit upstream annotation; the deferred Phase-1 typegen extension will
|
|
66
|
+
* close that gap by carrying upstream annotations through `ToolDefinition`.
|
|
67
|
+
*/
|
|
68
|
+
export function inferAnnotationsFromName(toolName) {
|
|
69
|
+
const name = toolName.toLowerCase();
|
|
70
|
+
// Destructive: mutate or remove
|
|
71
|
+
const destructivePrefix = /^(delete_|remove_|create_|update_|send_|post_|put_|patch_|drop_|kill_|terminate_|revoke_|destroy_|set_|activate_|deactivate_|enable_|disable_|cancel_)/;
|
|
72
|
+
const destructiveSuffix = /(_delete|_remove|_destroy)$/;
|
|
73
|
+
if (destructivePrefix.test(name) || destructiveSuffix.test(name)) {
|
|
74
|
+
return { readOnlyHint: false, destructiveHint: true, idempotentHint: false, openWorldHint: false };
|
|
75
|
+
}
|
|
76
|
+
// Mutating but not destructive
|
|
77
|
+
const mutatingPrefix = /^(save_|write_|upload_)/;
|
|
78
|
+
const mutatingSuffix = /(_save|_write|_upload)$/;
|
|
79
|
+
if (mutatingPrefix.test(name) || mutatingSuffix.test(name)) {
|
|
80
|
+
return { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false };
|
|
81
|
+
}
|
|
82
|
+
// Default: read-safe
|
|
83
|
+
return { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false };
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Conductor built-in tool names that are always registered by
|
|
87
|
+
* `MCPExecutorServer.registerTools()`. Any passthrough tool whose composed
|
|
88
|
+
* name matches one of these entries will be skipped to prevent duplicate-
|
|
89
|
+
* registration errors at the SDK level (CODE-LOW-4).
|
|
90
|
+
*
|
|
91
|
+
* Keep this set in sync with the `this.server.registerTool(name, ...)` calls
|
|
92
|
+
* in `mcp-server.ts`. The check uses the raw composed name (`server__tool`
|
|
93
|
+
* form) so a plain backend tool named `brave_web_search` registered under any
|
|
94
|
+
* server would collide with the conductor built-in of the same name.
|
|
95
|
+
*/
|
|
96
|
+
export const STATIC_TOOL_NAMES = new Set([
|
|
97
|
+
'execute_code',
|
|
98
|
+
'list_servers',
|
|
99
|
+
'discover_tools',
|
|
100
|
+
'get_metrics',
|
|
101
|
+
'set_mode',
|
|
102
|
+
'reload_servers',
|
|
103
|
+
'get_capabilities',
|
|
104
|
+
'compare_modes',
|
|
105
|
+
'passthrough_call',
|
|
106
|
+
'brave_web_search',
|
|
107
|
+
'add_server',
|
|
108
|
+
'remove_server',
|
|
109
|
+
'update_server',
|
|
110
|
+
'get_memory_stats',
|
|
111
|
+
'predict_cost',
|
|
112
|
+
'get_hot_paths',
|
|
113
|
+
'record_session',
|
|
114
|
+
'stop_recording',
|
|
115
|
+
'replay_session',
|
|
116
|
+
'import_servers_from_claude',
|
|
117
|
+
'test_server',
|
|
118
|
+
'diagnose_server',
|
|
119
|
+
'recommend_routing',
|
|
120
|
+
'export_to_claude',
|
|
121
|
+
]);
|
|
39
122
|
/**
|
|
40
123
|
* Register all `routing: "passthrough"` tools from the registry as
|
|
41
124
|
* first-class MCP tools on `mcpServer`.
|
|
@@ -45,12 +128,15 @@ export function buildPassthroughToolName(server, tool) {
|
|
|
45
128
|
* same server instance the SDK will throw a duplicate-name error, so callers
|
|
46
129
|
* must ensure it runs only once per server lifecycle.
|
|
47
130
|
*
|
|
48
|
-
* @param registry
|
|
49
|
-
* @param mcpServer
|
|
50
|
-
* @param mcpHub
|
|
51
|
-
* @
|
|
131
|
+
* @param registry Populated ToolRegistry (after `refresh()` has been called).
|
|
132
|
+
* @param mcpServer The McpServer instance to register tools on.
|
|
133
|
+
* @param mcpHub The MCPHub used to forward tool calls to backends.
|
|
134
|
+
* @param excludeNames Additional composed names to skip beyond the built-in
|
|
135
|
+
* {@link STATIC_TOOL_NAMES} set (e.g. names already
|
|
136
|
+
* registered by a previous call).
|
|
137
|
+
* @returns The number of passthrough tools registered.
|
|
52
138
|
*/
|
|
53
|
-
export function registerPassthroughTools(registry, mcpServer, mcpHub) {
|
|
139
|
+
export function registerPassthroughTools(registry, mcpServer, mcpHub, excludeNames) {
|
|
54
140
|
const tools = registry.getAllTools();
|
|
55
141
|
let registered = 0;
|
|
56
142
|
for (const tool of tools) {
|
|
@@ -58,6 +144,11 @@ export function registerPassthroughTools(registry, mcpServer, mcpHub) {
|
|
|
58
144
|
continue;
|
|
59
145
|
}
|
|
60
146
|
const composedName = buildPassthroughToolName(tool.server, tool.name);
|
|
147
|
+
// Skip names that collide with conductor built-ins or caller exclusions (CODE-LOW-4).
|
|
148
|
+
if (STATIC_TOOL_NAMES.has(composedName) || excludeNames?.has(composedName)) {
|
|
149
|
+
logger.warn(`Passthrough registrar: skipping '${composedName}' — name conflicts with a statically-registered tool`, { server: tool.server, tool: tool.name });
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
61
152
|
// Build an inputSchema for the SDK from the tool's JSON Schema properties.
|
|
62
153
|
// Each property is typed as z.unknown() (required) or z.unknown().optional()
|
|
63
154
|
// so the SDK validates presence of required fields while accepting any value.
|
|
@@ -71,16 +162,14 @@ export function registerPassthroughTools(registry, mcpServer, mcpHub) {
|
|
|
71
162
|
: z.unknown().optional();
|
|
72
163
|
}
|
|
73
164
|
}
|
|
74
|
-
//
|
|
75
|
-
// The registry does not yet carry upstream MCP ToolAnnotations (
|
|
76
|
-
// Phase 1 typegen
|
|
77
|
-
//
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
openWorldHint: false,
|
|
83
|
-
};
|
|
165
|
+
// Derive annotations from tool name pattern (HIGH-4 safety fix).
|
|
166
|
+
// The registry does not yet carry upstream MCP ToolAnnotations (deferred to
|
|
167
|
+
// a Phase 1 typegen extension), so name-pattern heuristics are the conservative
|
|
168
|
+
// middle ground: destructive-looking names are flagged so Claude can reason
|
|
169
|
+
// about safety. False negatives (a non-obvious destructive name registered as
|
|
170
|
+
// safe) require an explicit upstream annotation; the deferred typegen will
|
|
171
|
+
// close that gap.
|
|
172
|
+
const annotations = inferAnnotationsFromName(tool.name);
|
|
84
173
|
// Capture loop variables for the async handler closure.
|
|
85
174
|
const toolServer = tool.server;
|
|
86
175
|
const toolName = tool.name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passthrough-registrar.js","sourceRoot":"","sources":["../../src/server/passthrough-registrar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAyC3C;;;;GAIG;AACH,SAAS,eAAe,CAAC,OAAe;IACtC,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAc,EAAE,IAAY;IACnE,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;AAChE,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"passthrough-registrar.js","sourceRoot":"","sources":["../../src/server/passthrough-registrar.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const VERSION = "3.0.0-beta.
|
|
2
|
-
export declare const BUILD_NUMBER =
|
|
3
|
-
export declare const BUILD_STRING = "3.0.0-beta.
|
|
1
|
+
export declare const VERSION = "3.0.0-beta.2";
|
|
2
|
+
export declare const BUILD_NUMBER = 5;
|
|
3
|
+
export declare const BUILD_STRING = "3.0.0-beta.2 (build 5)";
|
|
4
4
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const VERSION = '3.0.0-beta.
|
|
2
|
-
export const BUILD_NUMBER =
|
|
3
|
-
export const BUILD_STRING = '3.0.0-beta.
|
|
1
|
+
export const VERSION = '3.0.0-beta.2';
|
|
2
|
+
export const BUILD_NUMBER = 5;
|
|
3
|
+
export const BUILD_STRING = '3.0.0-beta.2 (build 5)';
|
|
4
4
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@darkiceinteractive/mcp-conductor",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.2",
|
|
4
4
|
"description": "MCP server that orchestrates code execution in a sandboxed Deno environment with access to all MCP servers",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
}
|
|
61
61
|
},
|
|
62
62
|
"engines": {
|
|
63
|
-
"node": ">=
|
|
63
|
+
"node": ">=20.0.0"
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
66
|
"@inquirer/prompts": "^7.10.1",
|