Son's a niche tool to allow talking to JSON services in a more consistent way. It's not meant as an competitor to any other data format.
EDIT: s/alternative/competitor
I always find myself finding myself back with JSON. The advantage it can be parsed easily in any language -- everything has a JSON parser.
protobufs are fairly wide spread... from action script to erlang to haskell to visual basic.
Last time I tried (6 months ago) I couldn't find a proto3 implementation for Haskell that was complete ( https://github.com/google/proto-lens doesn't do Any, https://github.com/alphaHeavy/protobuf doesn't do proto3). Maybe one exists, or I could use proto2 and rewrite the other system I was working with.
I decided it was easier in my case to just output JSON.
Dang, `protobuf` doesn't support proto2? I'm kind of a Haskell die-hard, this is a big hole in our ecosystem=(
You don't really need proto3, though. Proto2 is compatible and proto3 mostly only removes features.