Jonathan Amsterdam
7bfde44981
mcp: statically type the server-side tool params ( #378 )
...
Introduce CallToolParamsRaw on the server side, so that tool handlers
see in the type system that a tool's arguments are a json.RawMessage.
Fixes #377 .
2025-08-30 08:16:06 -04:00
Rob Findley
5fd06ae8b7
mcp: unexport InitializeClientRequest
...
This request is synthetic, and should not be observed by the user.
Unexport it and rename InitializeServerRequest to just
InitializeRequest.
2025-08-22 10:40:57 -04:00
Kartik Verma
c058c6a93b
feat/Issue-13: elicitation support ( #188 )
...
fixes : #13
Implements elicitation functionality from MCP 2025-06-18 specification.
Changes
- Add ElicitParams and ElicitResult protocol types
- Add ServerSession.Elicit() method and ClientOptions.ElicitationHandler
- Schema validation enforces top-level properties only
- Support for accept/decline/cancel actions with progress tokens
Tests
- Integration test in TestEndToEnd
- Schema validation, error handling, and capability declaration tests
2025-08-22 09:29:51 -04:00
Jonathan Amsterdam
62db914082
mcp: export ToolFor ( #347 )
...
This is needed so clients can modify tool schemas, and not merely to
wrap ToolHandlers.
(A consequence of returning a copy of Tool instead of modifying it.)
2025-08-21 17:54:17 -04:00
Jonathan Amsterdam
bf79d784b9
mcp: remove references to ClientRequest[T] for concrete T ( #343 )
...
See related PR about ServerRequest[T].
2025-08-21 15:24:58 -04:00
Jonathan Amsterdam
6378df6f24
all: remove ServerRequest[T] for concrete T ( #342 )
...
Replace all occurrences of ServerRequest[*CallToolParams] and other
concrete instantiations with CallToolRequest and the like.
Make the XXXRequest types aliases, to preserve the convenience of
generics for the internal machinery (see shared.go, for example.)
I will expand the aliases in a followup PR.
2025-08-21 12:10:53 -04:00