zeroclaw-labs/zeroclaw · error · anyhow::Error
MCP stdio transport is closed
Error message
MCP stdio transport is closed
What it means
Error "MCP stdio transport is closed" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-tools/src/mcp_transport.rs:996
return Ok(JsonRpcResponse {
jsonrpc: crate::mcp_protocol::JSONRPC_VERSION.to_string(),
id: None,
result: None,
error: None,
});
};
let response = receiver
.await
.map_err(|_| McpTransportError::TransportClosed)?;
lifecycle.mark_completed();
drop(write_boundary);
Ok(response)
}
async fn reset(&self) -> Result<()> {
let mut state = self.state.lock().await;
if state.closed {
bail!("MCP stdio transport is closed");
}
let old_generation = self.active_generation.fetch_add(1, Ordering::AcqRel);
self.alive.store(false, Ordering::Release);
drain_pending_generation(&self.pending, old_generation);
if let Some(conn) = state.conn.take() {
Self::reap_conn(conn, &self.config.name).await?;
}
let generation = old_generation.wrapping_add(1);
let conn = Self::spawn(
&self.config,
generation,
Arc::clone(&self.pending),
Arc::clone(&self.alive),
Arc::clone(&self.active_generation),
Arc::clone(&self.child_exited),
)?;View on GitHub (pinned to 88bb9c8533)
Solutions
- Reconnect/restart the MCP stdio server; the transport is closed.
When it happens
Trigger: Thrown at crates/zeroclaw-tools/src/mcp_transport.rs:996 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23).
Data as JSON: /api/errors/140bbddab9627e10.
Report an issue: GitHub.