There are a list of possible types in protobuf. BigDecimal/BigInteger are not. You can write your own conversion step tho. https://developers.google.com/protocol-buffers/docs/proto
Yes, you need to travel and write mapping from/to java class and proto. It is a necessary step and everyone has to do unfortunately. I don't think there is an automated tool for that. Maybe you can write one and open-source it? :)
I think, what you ask is complete one-to-one mapping from java class to protobuf message. Generally, such mapping is very hard to be done in automated fashion. Also, Google purposely limits protobuf as one serialization protocol, not ORM like hibernate and spring.