I like the simplicity of the library. I haven't tried it yet, but this behavior is a bit unfortunate choice
> If there is an error, it will be JSON encoded, including a message and a standardized error code.
Why not to return standard protobuf error when the source was a protobuf? It massively complicates things when you have to expect errors in one format and responses in the other.