diff --git a/src/mcp/resources.zig b/src/mcp/resources.zig index e08aab1b..914f95cd 100644 --- a/src/mcp/resources.zig +++ b/src/mcp/resources.zig @@ -22,7 +22,8 @@ pub const resource_list = [_]protocol.Resource{ }; pub fn handleList(server: *Server, req: protocol.Request) !void { - try server.sendResult(req.id.?, .{ .resources = &resource_list }); + const id = req.id orelse return; + try server.sendResult(id, .{ .resources = &resource_list }); } const ReadParams = struct { diff --git a/src/mcp/router.zig b/src/mcp/router.zig index 38b2e206..3a92aeac 100644 --- a/src/mcp/router.zig +++ b/src/mcp/router.zig @@ -80,6 +80,7 @@ pub fn handleMessage(server: *Server, arena: std.mem.Allocator, msg: []const u8) } fn handleInitialize(server: *Server, req: protocol.Request) !void { + const id = req.id orelse return; const result = protocol.InitializeResult{ .protocolVersion = "2025-11-25", .capabilities = .{ @@ -92,7 +93,7 @@ fn handleInitialize(server: *Server, req: protocol.Request) !void { }, }; - try server.sendResult(req.id.?, result); + try server.sendResult(id, result); } fn handlePing(server: *Server, req: protocol.Request) !void { diff --git a/src/mcp/tools.zig b/src/mcp/tools.zig index 59c20041..73e7ff9b 100644 --- a/src/mcp/tools.zig +++ b/src/mcp/tools.zig @@ -172,7 +172,8 @@ pub const tool_list = [_]protocol.Tool{ pub fn handleList(server: *Server, arena: std.mem.Allocator, req: protocol.Request) !void { _ = arena; - try server.sendResult(req.id.?, .{ .tools = &tool_list }); + const id = req.id orelse return; + try server.sendResult(id, .{ .tools = &tool_list }); } const GotoParams = struct {