Is there any particular reason json-rpc was used compared to more performant gRPC?
I'd consider a different serialization format, but it doesn't seem to be on the critical path for either performance or functionality, so I feel there are a lot of other things ahead of it.
(I'm not sure how much practice there is behind that theory, currently, but that's the plan.)
I for one am glad they didn't go towards custom protocols with single complex implementations, towards something that can be assembled easily from standard components.