{"record":{"id":"140bbddab9627e10","repo":"zeroclaw-labs/zeroclaw","slug":"mcp-stdio-transport-is-closed","errorCode":null,"errorMessage":"MCP stdio transport is closed","messagePattern":"MCP stdio transport is closed","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"crates/zeroclaw-tools/src/mcp_transport.rs","lineNumber":996,"sourceCode":"            return Ok(JsonRpcResponse {\n                jsonrpc: crate::mcp_protocol::JSONRPC_VERSION.to_string(),\n                id: None,\n                result: None,\n                error: None,\n            });\n        };\n        let response = receiver\n            .await\n            .map_err(|_| McpTransportError::TransportClosed)?;\n        lifecycle.mark_completed();\n        drop(write_boundary);\n        Ok(response)\n    }\n\n    async fn reset(&self) -> Result<()> {\n        let mut state = self.state.lock().await;\n        if state.closed {\n            bail!(\"MCP stdio transport is closed\");\n        }\n\n        let old_generation = self.active_generation.fetch_add(1, Ordering::AcqRel);\n        self.alive.store(false, Ordering::Release);\n        drain_pending_generation(&self.pending, old_generation);\n        if let Some(conn) = state.conn.take() {\n            Self::reap_conn(conn, &self.config.name).await?;\n        }\n\n        let generation = old_generation.wrapping_add(1);\n        let conn = Self::spawn(\n            &self.config,\n            generation,\n            Arc::clone(&self.pending),\n            Arc::clone(&self.alive),\n            Arc::clone(&self.active_generation),\n            Arc::clone(&self.child_exited),\n        )?;","sourceCodeStart":978,"sourceCodeEnd":1014,"githubUrl":"https://github.com/zeroclaw-labs/zeroclaw/blob/88bb9c8533fc57ed7a03e36ca7c9ed2bf8336dcc/crates/zeroclaw-tools/src/mcp_transport.rs#L978-L1014","documentation":"Error \"MCP stdio transport is closed\" thrown in zeroclaw-labs/zeroclaw.","triggerScenarios":"Thrown at crates/zeroclaw-tools/src/mcp_transport.rs:996 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Reconnect/restart the MCP stdio server; the transport is closed."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"88bb9c8533fc57ed7a03e36ca7c9ed2bf8336dcc","analyzedAt":"2026-08-23T01:07:41.857Z","schemaVersion":2},"datasetVersion":"2026-08-23T08:06:27.607Z"}