You are basically already doing the right thing. Events are the way to go for client ↔ server communication. And inter resource communication happens through events or exports.
If you want to simply sync values between client/server including attaching those values to entities, you can use state bags as well: