No, you are not missing something.
Though FlatBuffers is intended to be universally useful, it was originally designed with typical (mobile) game workloads in mind, loading large amounts of data/assets, or representing scenes, savegames etc. For these use cases, the protobuf parsing and object allocation are undesirable overhead, so FlatBuffers is optimized for being readable with the lowest overhead in cpu / memory usage possible.
FlatBuffers is not intended to be a format to represent your mutable transient data, though we would like to cover this use case in the future. There's multiple ways to do so (with a set of shadow objects, or actual in-place mutation of the FlatBuffer). I'd be happy to discuss those with you further if you're interested.