microsoft/vs-streamjsonrpc

The StreamJsonRpc library offers JSON-RPC 2.0 over any .NET Stream, WebSocket, or Pipe. With bonus support for request cancellation, client proxy generation, and more.

936

stars

4,725

commits

C#

primary language

Sep 11, 2026

updated

microsoft.github.io/vs-streamjsonrpc/
dotnet
json-rpc
netstandard
rpc
stream
transport

README

vs-StreamJsonRpc

codecov

StreamJsonRpc

NuGet package Build Status

StreamJsonRpc is a cross-platform, .NET portable library that implements the JSON-RPC wire protocol.

It works over Stream, WebSocket, or System.IO.Pipelines pipes, independent of the underlying transport.

Bonus features beyond the JSON-RPC spec include:

  1. Request cancellation
  2. .NET Events as notifications
  3. Dynamic client proxy generation
  4. Support for compact binary serialization via MessagePack
  5. Pluggable architecture for custom message handling and formatting.

Learn about the use cases for JSON-RPC and how to use this library from our documentation.

Contributors

(top 30 of 69)

AArnott

3,981 commits

dependabot[bot]

209 commits

renovate[bot]

202 commits

tinaschrepfer

51 commits

microsoft/vs-streamjsonrpc

The StreamJsonRpc library offers JSON-RPC 2.0 over any .NET Stream, WebSocket, or Pipe. With bonus support for request cancellation, client proxy generation, and more.

936

stars

4,725

commits

C#

primary language

Sep 11, 2026

updated

microsoft.github.io/vs-streamjsonrpc/
dotnet
json-rpc
netstandard
rpc
stream
transport

README

vs-StreamJsonRpc

codecov

StreamJsonRpc

NuGet package Build Status

StreamJsonRpc is a cross-platform, .NET portable library that implements the JSON-RPC wire protocol.

It works over Stream, WebSocket, or System.IO.Pipelines pipes, independent of the underlying transport.

Bonus features beyond the JSON-RPC spec include:

  1. Request cancellation
  2. .NET Events as notifications
  3. Dynamic client proxy generation
  4. Support for compact binary serialization via MessagePack
  5. Pluggable architecture for custom message handling and formatting.

Learn about the use cases for JSON-RPC and how to use this library from our documentation.

Contributors

(top 30 of 69)

AArnott

3,981 commits

dependabot[bot]

209 commits

renovate[bot]

202 commits

tinaschrepfer

51 commits

Languages

C#

96.1%

PowerShell

3.8%