In this situation, I would have a tool called "request ability to edit GLTF". I This would trigger an addition to the tool list specifically for your desired GLTF. The model would send the "tool list changed' notification and now the LLM would have access.
If you want to do it without the tool list changed notification ability, I'd have two tools, get schema for GLTF, and edit GLTF with schema. If you note that the get schema is a dependency for edit, the LLM could probably plumb that together on it's own fairly well
You could probably also support this workflow using sampling.
[0] - https://www.openapis.org/arazzo-specification [1] - https://spec.openapis.org/arazzo/v1.0.1.html#runtime-express...
There is a description field, it seems sufficient for most cases. You can also dynamically change your tools using `listChanged` capability.
We already have 100% reliable structured outputs if we are making chatbots with LLM integrations directly; I don't want to lose this.
I didn’t find it entertaining.