The main difference is in the UI libraries each app provides, which aren't cross-compatible. If you want to run plain text-based Python and work with a REPL, they feel very similar. Pyto ship with Python 3.10, though.
In the past I tried to report bugs to the developer but never got any reply
And that's fine! 'Modeling the world' is a grandiose philosophical kind of activity and usually not something you need to do when you develop software.
Maybe clients should declare their own types containing just what they need and copy the data into them from the protobufs? But this does get tedious. On the other hand, in a schemaless JSON system, there is nothing statically checking that the clients and servers have compatible ideas of what a message should contain.
How’s it different from the proposed model where you start by parsing the data you receive and, once it’s parsed and know it’s good, you process it?