diff --git a/crates/rmcp/src/transport/child_process.rs b/crates/rmcp/src/transport/child_process.rs index f2e3c66e..72957797 100644 --- a/crates/rmcp/src/transport/child_process.rs +++ b/crates/rmcp/src/transport/child_process.rs @@ -59,11 +59,12 @@ impl AsyncRead for TokioChildProcessOut { } impl TokioChildProcess { - pub fn new(mut command: tokio::process::Command) -> std::io::Result { - command + pub fn new(command: impl Into) -> std::io::Result { + let mut command_wrap = command.into(); + command_wrap + .command_mut() .stdin(std::process::Stdio::piped()) .stdout(std::process::Stdio::piped()); - let mut command_wrap = TokioCommandWrap::from(command); #[cfg(unix)] command_wrap.wrap(process_wrap::tokio::ProcessGroup::leader()); #[cfg(windows)]