mcp/server: expose InitializeParams to ServerSession (#336)

This CL enables the server session to see what capabilities the client
has by introducing the InitializeParams() function.

This CL also adds a test to ensure ClientCapabilities is accurate.

Fixes #141
This commit is contained in:
Sam Thanawalla 2025-08-20 14:39:17 -04:00 • committed by GitHub
commit 48abccbf6b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -849,6 +849,8 @@ func (ss *ServerSession) handle(ctx context.Context, req *jsonrpc.Request) (any,
return handleReceive(ctx, ss, req)
}
func (ss *ServerSession) InitializeParams() *InitializeParams { return ss.state.InitializeParams }
func (ss *ServerSession) initialize(ctx context.Context, params *InitializeParams) (*InitializeResult, error) {
if params == nil {
return nil, fmt.Errorf("%w: \"params\" must be be provided", jsonrpc2.ErrInvalidParams)