Yes, therefore this PR which aims to improve TM's interface so that it can be up to the task.
We can freely change and improve TM, and do so in backward compatible ways, just as with the rest of Geany.
I'd be surprised if this interface worked well for the libclang backend - I expect its output is something in principle similar to XML DOM tree and you can't capture the tree with a simple array of tags unless you want to give up some information (which I'm afraid will be necessary for e.g. better autocompletion).