@@ -283,11 +283,14 @@ func doGetMCPTools(ctx context.Context, permissions permission.Service, cfg *con
283 slog.Error("error creating mcp client", "error", err, "name", name)
283 slog.Error("error creating mcp client", "error", err, "name", name)
286+ // Only call Start() for non-stdio clients, as stdio clients auto-start
287+ if m.Type != config.MCPStdio {
286− if err := c.Start(ctx); err != nil {
288+ if err := c.Start(ctx); err != nil {
287− updateMCPState(name, MCPStateError, err, nil, 0)
289+ updateMCPState(name, MCPStateError, err, nil, 0)
288− slog.Error("error starting mcp client", "error", err, "name", name)
290+ slog.Error("error starting mcp client", "error", err, "name", name)
289− _ = c.Close()
291+ _ = c.Close()
292 if _, err := c.Initialize(ctx, mcpInitRequest); err != nil {
295 if _, err := c.Initialize(ctx, mcpInitRequest); err != nil {
293 updateMCPState(name, MCPStateError, err, nil, 0)
296 updateMCPState(name, MCPStateError, err, nil, 0)