skedyul 0.3.9 → 0.3.10
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/.build-stamp +1 -1
- package/dist/server/index.js +28 -1
- package/package.json +1 -1
package/dist/.build-stamp
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
1771634725838
|
package/dist/server/index.js
CHANGED
|
@@ -37,14 +37,18 @@ exports.server = exports.uninstallContextLogger = exports.installContextLogger =
|
|
|
37
37
|
exports.createSkedyulServer = createSkedyulServer;
|
|
38
38
|
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
39
39
|
const z = __importStar(require("zod"));
|
|
40
|
+
console.log('[skedyul-node/server] Module loading - imports done');
|
|
40
41
|
const service_1 = require("../core/service");
|
|
41
42
|
const tool_handler_1 = require("./tool-handler");
|
|
42
43
|
const dedicated_1 = require("./dedicated");
|
|
43
44
|
const serverless_1 = require("./serverless");
|
|
44
45
|
const utils_1 = require("./utils");
|
|
45
46
|
const context_logger_1 = require("./context-logger");
|
|
47
|
+
console.log('[skedyul-node/server] All imports complete');
|
|
46
48
|
// Install context-aware logger at module load time
|
|
49
|
+
console.log('[skedyul-node/server] Installing context logger...');
|
|
47
50
|
(0, context_logger_1.installContextLogger)();
|
|
51
|
+
console.log('[skedyul-node/server] Context logger installed');
|
|
48
52
|
// Re-export utilities
|
|
49
53
|
var utils_2 = require("./utils");
|
|
50
54
|
Object.defineProperty(exports, "normalizeBilling", { enumerable: true, get: function () { return utils_2.normalizeBilling; } });
|
|
@@ -86,14 +90,18 @@ Object.defineProperty(exports, "getLogContext", { enumerable: true, get: functio
|
|
|
86
90
|
Object.defineProperty(exports, "installContextLogger", { enumerable: true, get: function () { return context_logger_2.installContextLogger; } });
|
|
87
91
|
Object.defineProperty(exports, "uninstallContextLogger", { enumerable: true, get: function () { return context_logger_2.uninstallContextLogger; } });
|
|
88
92
|
function createSkedyulServer(config, registry, webhookRegistry) {
|
|
93
|
+
console.log('[createSkedyulServer] Step 1: mergeRuntimeEnv()');
|
|
89
94
|
(0, utils_1.mergeRuntimeEnv)();
|
|
95
|
+
console.log('[createSkedyulServer] Step 2: coreApi setup');
|
|
90
96
|
if (config.coreApi?.service) {
|
|
91
97
|
service_1.coreApiService.register(config.coreApi.service);
|
|
92
98
|
if (config.coreApi.webhookHandler) {
|
|
93
99
|
service_1.coreApiService.setWebhookHandler(config.coreApi.webhookHandler);
|
|
94
100
|
}
|
|
95
101
|
}
|
|
102
|
+
console.log('[createSkedyulServer] Step 3: buildToolMetadata()');
|
|
96
103
|
const tools = (0, tool_handler_1.buildToolMetadata)(registry);
|
|
104
|
+
console.log('[createSkedyulServer] Step 3 done, tools:', tools.length);
|
|
97
105
|
const toolNames = Object.values(registry).map((tool) => tool.name);
|
|
98
106
|
const runtimeLabel = config.computeLayer;
|
|
99
107
|
const maxRequests = config.maxRequests ??
|
|
@@ -102,30 +110,42 @@ function createSkedyulServer(config, registry, webhookRegistry) {
|
|
|
102
110
|
const ttlExtendSeconds = config.ttlExtendSeconds ??
|
|
103
111
|
(0, utils_1.parseNumberEnv)(process.env.MCP_TTL_EXTEND) ??
|
|
104
112
|
3600;
|
|
113
|
+
console.log('[createSkedyulServer] Step 4: createRequestState()');
|
|
105
114
|
const state = (0, tool_handler_1.createRequestState)(maxRequests, ttlExtendSeconds, runtimeLabel, toolNames);
|
|
115
|
+
console.log('[createSkedyulServer] Step 4 done');
|
|
116
|
+
console.log('[createSkedyulServer] Step 5: new McpServer()');
|
|
106
117
|
const mcpServer = new mcp_js_1.McpServer({
|
|
107
118
|
name: config.metadata.name,
|
|
108
119
|
version: config.metadata.version,
|
|
109
120
|
});
|
|
121
|
+
console.log('[createSkedyulServer] Step 5 done');
|
|
110
122
|
const dedicatedShutdown = () => {
|
|
111
123
|
// eslint-disable-next-line no-console
|
|
112
124
|
console.log('Max requests reached, shutting down...');
|
|
113
125
|
setTimeout(() => process.exit(0), 1000);
|
|
114
126
|
};
|
|
127
|
+
console.log('[createSkedyulServer] Step 6: createCallToolHandler()');
|
|
115
128
|
const callTool = (0, tool_handler_1.createCallToolHandler)(registry, state, config.computeLayer === 'dedicated' ? dedicatedShutdown : undefined);
|
|
129
|
+
console.log('[createSkedyulServer] Step 6 done');
|
|
116
130
|
// Register all tools from the registry
|
|
131
|
+
console.log('[createSkedyulServer] Step 7: Registering tools...');
|
|
117
132
|
for (const [toolKey, tool] of Object.entries(registry)) {
|
|
133
|
+
console.log(`[createSkedyulServer] Registering tool: ${toolKey}`);
|
|
118
134
|
// Use the tool's name or fall back to the registry key
|
|
119
135
|
const toolName = tool.name || toolKey;
|
|
120
136
|
const toolDisplayName = tool.label || toolName;
|
|
137
|
+
console.log(`[createSkedyulServer] Getting input schema for ${toolKey}`);
|
|
121
138
|
const inputZodSchema = (0, utils_1.getZodSchema)(tool.inputSchema);
|
|
139
|
+
console.log(`[createSkedyulServer] Getting output schema for ${toolKey}`);
|
|
122
140
|
const outputZodSchema = (0, utils_1.getZodSchema)(tool.outputSchema);
|
|
123
141
|
// Wrap the input schema to accept Skedyul format: { inputs: {...}, env: {...} }
|
|
124
142
|
// This allows the MCP SDK to pass through the wrapper without stripping fields
|
|
143
|
+
console.log(`[createSkedyulServer] Creating wrapped schema for ${toolKey}`);
|
|
125
144
|
const wrappedInputSchema = z.object({
|
|
126
145
|
inputs: inputZodSchema ?? z.record(z.string(), z.unknown()).optional(),
|
|
127
146
|
env: z.record(z.string(), z.string()).optional(),
|
|
128
147
|
}).passthrough();
|
|
148
|
+
console.log(`[createSkedyulServer] Calling mcpServer.registerTool for ${toolKey}`);
|
|
129
149
|
mcpServer.registerTool(toolName, {
|
|
130
150
|
title: toolDisplayName,
|
|
131
151
|
description: tool.description,
|
|
@@ -195,11 +215,18 @@ function createSkedyulServer(config, registry, webhookRegistry) {
|
|
|
195
215
|
billing: result.billing,
|
|
196
216
|
};
|
|
197
217
|
});
|
|
218
|
+
console.log(`[createSkedyulServer] Tool ${toolKey} registered successfully`);
|
|
198
219
|
}
|
|
220
|
+
console.log('[createSkedyulServer] Step 7 done - all tools registered');
|
|
221
|
+
console.log('[createSkedyulServer] Step 8: Creating server instance');
|
|
199
222
|
if (config.computeLayer === 'dedicated') {
|
|
223
|
+
console.log('[createSkedyulServer] Creating dedicated instance');
|
|
200
224
|
return (0, dedicated_1.createDedicatedServerInstance)(config, tools, callTool, state, mcpServer, webhookRegistry);
|
|
201
225
|
}
|
|
202
|
-
|
|
226
|
+
console.log('[createSkedyulServer] Creating serverless instance');
|
|
227
|
+
const serverlessInstance = (0, serverless_1.createServerlessInstance)(config, tools, callTool, state, mcpServer, registry, webhookRegistry);
|
|
228
|
+
console.log('[createSkedyulServer] Serverless instance created successfully');
|
|
229
|
+
return serverlessInstance;
|
|
203
230
|
}
|
|
204
231
|
exports.server = {
|
|
205
232
|
create: createSkedyulServer,
|