From 0fe118f9e6394f50daacafec89af971aad3665c7 Mon Sep 17 00:00:00 2001 From: Bill Date: Tue, 16 Dec 2025 13:38:37 -0500 Subject: [PATCH] fix: async/await, eslint directive, and promise rejection in mcp-server.ts --- src/server/mcp-server.ts | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/server/mcp-server.ts b/src/server/mcp-server.ts index adc8c07..156882f 100644 --- a/src/server/mcp-server.ts +++ b/src/server/mcp-server.ts @@ -38,9 +38,9 @@ export class MCPServer { try { switch (request.method) { case 'initialize': - return this.createSuccessResponse(request.id, await this.handleInitialize(request.params ?? {})); + return this.createSuccessResponse(request.id, this.handleInitialize(request.params ?? {})); case 'tools/list': - return this.createSuccessResponse(request.id, await this.handleListTools()); + return this.createSuccessResponse(request.id, this.handleListTools()); case 'tools/call': return this.createSuccessResponse(request.id, await this.handleCallTool(request.params ?? {})); case 'ping': @@ -54,7 +54,7 @@ export class MCPServer { } } - private async handleInitialize(_params: JSONRPCParams): Promise { + private handleInitialize(_params: JSONRPCParams): InitializeResult { return { protocolVersion: "2024-11-05", capabilities: { @@ -67,15 +67,14 @@ export class MCPServer { }; } - private async handleListTools(): Promise { + private handleListTools(): ListToolsResult { return { tools: this.toolRegistry.getToolDefinitions() }; } private async handleCallTool(params: JSONRPCParams): Promise { - // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Tool arguments come from JSON-RPC and need runtime validation - const paramsObj = params as { name: string; arguments: any }; + const paramsObj = params as { name: string; arguments: Record }; return await this.toolRegistry.callTool(paramsObj.name, paramsObj.arguments); } @@ -114,7 +113,7 @@ export class MCPServer { } }); } catch (error) { - reject(error); + reject(error instanceof Error ? error : new Error(String(error))); } }); }