diff --git a/crates/rmcp/src/transport.rs b/crates/rmcp/src/transport.rs index 4cc8476..81286fe 100644 --- a/crates/rmcp/src/transport.rs +++ b/crates/rmcp/src/transport.rs @@ -221,7 +221,8 @@ where item: TxJsonRpcMessage, ) -> impl Future> + Send + 'static { let sender = self.sender.clone(); - let terminate = matches!(item, TxJsonRpcMessage::::Response(_)); + let terminate = matches!(item, TxJsonRpcMessage::::Response(_)) + || matches!(item, TxJsonRpcMessage::::Error(_)); let signal = self.finished_signal.clone(); async move { sender.send(item).await?;