Fix optional arrays/objects issue #771 #772
Open
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.
Disclaimer
PR/patches written with Claude Code (Sonnet 4)
Summary
Fixes MCP Inspector sending empty arrays
[]
and objects{}
for optional parameters instead of omitting them, which causes compatibility issues with OpenAPI servers.Problem
[]
for optional array parameters{}
for optional object parametersSolution
Updated the
generateDefaultValue
function inschemaUtils.ts
to:undefined
for optional array parameters (omits them from requests)undefined
for optional object parameters (omits them from requests)[]
for required array parameters{}
for required object parametersImplementation Plan
[]
only for required arrays andundefined
for optional arrays{}
only for required objects andundefined
for optional objectsfix:
commits for arrays and objects as requestedTesting
Added comprehensive test coverage for:
undefined
[]
undefined
{}
undefined
undefined
All existing tests continue to pass, ensuring no regression.
Expected Outcome
Optional array and object parameters will be omitted from tool call arguments instead of being sent as empty arrays/objects, resolving compatibility issues with OpenAPI servers.
Fixes #771