I am not a fan of having to compile proto files.  I've been playing with a protobuf-like encoder that does not need compiling.  Specifically to replace the JSON row storage in osquery : 
https://github.com/packetzero/vsqlite_serialize
I haven't looked at RPC use.