There are no set goals for this, but that is because i3 doesn't have a roadmap at all. i3 is contribution-driven, so you can suggest features and either implement them yourself or wait for someone else to do it (assuming they will be accepted).
A few weeks ago we were talking about an issue and it came up that we could add a message type to retrieve the current bindings. Michael stated that he'd be open to that. So at least that would very likely be merged. For any other information you want through the IPC, I suggest opening a feature request on github and see what the feedback is.
However, you should have usecases in mind (and explain them). We won't be adding features on the off-chance that they might be useful some day in the future.
Also note that most changes that are done through i3-msg (or any other IPC implementation) only affect the tree and not the configuration. So querying the tree will already give you a ton on information about the current state. So again, please explain your usecases for this – and also what informaiton exactly you would need.
I'm not an i3 developer, but I would tend to think that this would be a lot of effort for an unclear goal. What would your application of this kind of feature be? Perhaps we can suggest other solutions?
It is not possible to change any of *i3's* configuration options with `i3-msg`. With the exception of `i3-msg reload` and `i3-msg restart` of course, but that just loads the settings from the configuration file. So you really could only retrieve the settings that are in the config file anyway.
Retrieval is all I want at this point. And I'd rather not re-invent the parser since it's already been done.