I believe the default behavior for OmniSharp and Roslyn language servers is to use stdin/stdout for inter-process communication, and as far as I can tell, this extension is relying on that default behavior. In benchmarking a language server I've contributed to, this is a significant bottleneck, as all JSONRPC is serialized via stdin/stdout. It's a common convention for language servers to support a --pipe cli argument as well as --stdio, and --pipe is commonly used for VSCode extensions.
I've also raised this here: zed-industries/zed#18698 (comment)