mcp/server: advertise completions only if installed (#213)

Previously, completions would always be advertised as a capability even
if the CompletionHandler was not installed by the server. This CL fixes
that.
This commit is contained in:
Sam Thanawalla 2025-08-04 10:12:01 -04:00 • committed by GitHub
commit faaf77dc05
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -314,9 +314,8 @@ func TestStreamableServerTransport(t *testing.T) {
initReq := req(1, methodInitialize, &InitializeParams{})
initResp := resp(1, &InitializeResult{
Capabilities: &serverCapabilities{
Completions: &completionCapabilities{},
Logging: &loggingCapabilities{},
Tools: &toolCapabilities{ListChanged: true},
Logging: &loggingCapabilities{},
Tools: &toolCapabilities{ListChanged: true},
},
ProtocolVersion: latestProtocolVersion,
ServerInfo: &Implementation{Name: "testServer", Version: "v1.0.0"},
@ -732,9 +731,8 @@ func TestStreamableClientTransportApplicationJSON(t *testing.T) {
}
initResult := &InitializeResult{
Capabilities: &serverCapabilities{
Completions: &completionCapabilities{},
Logging: &loggingCapabilities{},
Tools: &toolCapabilities{ListChanged: true},
Logging: &loggingCapabilities{},
Tools: &toolCapabilities{ListChanged: true},
},
ProtocolVersion: latestProtocolVersion,
ServerInfo: &Implementation{Name: "testServer", Version: "v1.0.0"},