* Initial plan
* Add Description property to Implementation type
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
* Add test to validate client Description from server perspective
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* Initial plan
* Update documentation to clarify error handling per SEP-1303
- Updated McpErrorCode.InvalidParams documentation to clarify it's for protocol-level errors (malformed requests, unknown primitives)
- Updated CallToolResult documentation to distinguish between tool execution errors and protocol errors
- Updated McpProtocolException documentation to emphasize it's only for protocol-level errors
- Added test to verify input validation errors are returned as tool execution errors (IsError=true)
- Implementation already correctly handles input validation as tool execution errors per SEP-1303
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
* Ignore unexpected properties when deserializing a ContentBlock
* Fix deserialization of Reference.Title and more bugs for unknown props
* Remove comments about skipping additional properties
Rather than always serializing to a JsonElement, which IChatClients that consume the tool won't be able to reason about, convert the content into AIContents that they can reason about.
* Initial plan
* Add SEP-1034 support for default values in all primitive schema types
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Address PR feedback: convert if-else to switch and add default value mapping tests
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Remove default value extraction code and linker annotations per feedback
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Use literal true/false values instead of GetBoolean() call
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Reinstate tests and fix CreatePrimitiveSchema to extract defaults from AttributeProvider
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Remove manual default extraction and update test to use positional record
Removed the manual default value extraction code from BuildRequestSchema
and SetDefaultValue helper as this should be handled by AIJsonUtilities.
Updated FormWithDefaults to be a positional record with optional parameters.
Test is now skipped until AIJsonUtilities supports extracting defaults from
optional parameters.
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Use 'is not null' pattern for consistency with nullable checks
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: eiriktsarpalis <2813363+eiriktsarpalis@users.noreply.github.com>
* Initial plan
* Add comprehensive tests for resource capability preservation
- Added tests to verify manual resource capability settings are preserved
- Added integration tests to confirm resources are exposed when capabilities are set
- Tests confirm the issue is resolved or was not reproducible
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
* Add test documenting expected behavior for resource capability configuration
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>