Add support for tool structured content and output schema #146
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #139
In this PR, I add:
structuredContent
inCallToolResult
outputSchema
inTool
ToolSerializationTest
Server.addTool()
taking a tool directly, to make it more consistent withaddPrompt
methodsMotivation and Context
To support the new tool structured output and output schema of the 2025-06-18 protocol version.
How Has This Been Tested?
I extended the existing
ToolSerializationTest
to verify that the output schema was correctly serialized.Breaking Changes
Note that I added the
outputSchema
field in theTool
data class before the newannotations
field added on July, the 7th. I considered that there had not been any release since the addition ofannotations
, so it would not break the compatibility of thecomponentX()
data class methods for the SDK users.Types of changes
Checklist
Additional context