Skip to content

Commit e05552f

Browse files
committed
refactor(mcp): disable completion features and downgrade MCP SDK to 0.9.0
- Comment out AsyncCompletionSpecification and SyncCompletionSpecification imports - Comment out completion parameters and processing in both sync and async server creation methods - Downgrade MCP SDK version from 0.10.0-SNAPSHOT to 0.9.0 Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
1 parent 6c85aea commit e05552f

File tree

2 files changed

+23
-21
lines changed

2 files changed

+23
-21
lines changed

auto-configurations/mcp/spring-ai-autoconfigure-mcp-server/src/main/java/org/springframework/ai/mcp/server/autoconfigure/McpServerAutoConfiguration.java

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,11 @@
2828
import io.modelcontextprotocol.server.McpServer.AsyncSpecification;
2929
import io.modelcontextprotocol.server.McpServer.SyncSpecification;
3030
import io.modelcontextprotocol.server.McpServerFeatures;
31-
import io.modelcontextprotocol.server.McpServerFeatures.AsyncCompletionSpecification;
31+
// import io.modelcontextprotocol.server.McpServerFeatures.AsyncCompletionSpecification;
3232
import io.modelcontextprotocol.server.McpServerFeatures.AsyncPromptSpecification;
3333
import io.modelcontextprotocol.server.McpServerFeatures.AsyncResourceSpecification;
3434
import io.modelcontextprotocol.server.McpServerFeatures.AsyncToolSpecification;
35-
import io.modelcontextprotocol.server.McpServerFeatures.SyncCompletionSpecification;
35+
// import io.modelcontextprotocol.server.McpServerFeatures.SyncCompletionSpecification;
3636
import io.modelcontextprotocol.server.McpServerFeatures.SyncPromptSpecification;
3737
import io.modelcontextprotocol.server.McpServerFeatures.SyncResourceSpecification;
3838
import io.modelcontextprotocol.server.McpServerFeatures.SyncToolSpecification;
@@ -175,7 +175,7 @@ public McpSyncServer mcpSyncServer(McpServerTransportProvider transportProvider,
175175
ObjectProvider<List<SyncToolSpecification>> tools,
176176
ObjectProvider<List<SyncResourceSpecification>> resources,
177177
ObjectProvider<List<SyncPromptSpecification>> prompts,
178-
ObjectProvider<List<SyncCompletionSpecification>> completions,
178+
// ObjectProvider<List<SyncCompletionSpecification>> completions,
179179
ObjectProvider<BiConsumer<McpSyncServerExchange, List<McpSchema.Root>>> rootsChangeConsumers,
180180
List<ToolCallbackProvider> toolCallbackProvider) {
181181

@@ -219,14 +219,15 @@ public McpSyncServer mcpSyncServer(McpServerTransportProvider transportProvider,
219219
+ serverProperties.isPromptChangeNotification());
220220
}
221221

222-
List<SyncCompletionSpecification> completionSpecifications = completions.stream()
223-
.flatMap(List::stream)
224-
.toList();
225-
if (!CollectionUtils.isEmpty(completionSpecifications)) {
226-
serverBuilder.completions(completionSpecifications);
227-
capabilitiesBuilder.completions();
228-
logger.info("Registered completions: " + completionSpecifications.size());
229-
}
222+
// List<SyncCompletionSpecification> completionSpecifications =
223+
// completions.stream()
224+
// .flatMap(List::stream)
225+
// .toList();
226+
// if (!CollectionUtils.isEmpty(completionSpecifications)) {
227+
// serverBuilder.completions(completionSpecifications);
228+
// capabilitiesBuilder.completions();
229+
// logger.info("Registered completions: " + completionSpecifications.size());
230+
// }
230231

231232
rootsChangeConsumers.ifAvailable(consumer -> {
232233
serverBuilder.rootsChangeHandler((exchange, roots) -> consumer.accept(exchange, roots));
@@ -282,7 +283,7 @@ public McpAsyncServer mcpAsyncServer(McpServerTransportProvider transportProvide
282283
ObjectProvider<List<AsyncToolSpecification>> tools,
283284
ObjectProvider<List<AsyncResourceSpecification>> resources,
284285
ObjectProvider<List<AsyncPromptSpecification>> prompts,
285-
ObjectProvider<List<AsyncCompletionSpecification>> completions,
286+
// ObjectProvider<List<AsyncCompletionSpecification>> completions,
286287
ObjectProvider<BiConsumer<McpAsyncServerExchange, List<McpSchema.Root>>> rootsChangeConsumer,
287288
List<ToolCallbackProvider> toolCallbackProvider) {
288289

@@ -326,14 +327,15 @@ public McpAsyncServer mcpAsyncServer(McpServerTransportProvider transportProvide
326327
+ serverProperties.isPromptChangeNotification());
327328
}
328329

329-
List<AsyncCompletionSpecification> completionSpecifications = completions.stream()
330-
.flatMap(List::stream)
331-
.toList();
332-
if (!CollectionUtils.isEmpty(completionSpecifications)) {
333-
serverBuilder.completions(completionSpecifications);
334-
capabilitiesBuilder.completions();
335-
logger.info("Registered completions: " + completionSpecifications.size());
336-
}
330+
// List<AsyncCompletionSpecification> completionSpecifications =
331+
// completions.stream()
332+
// .flatMap(List::stream)
333+
// .toList();
334+
// if (!CollectionUtils.isEmpty(completionSpecifications)) {
335+
// serverBuilder.completions(completionSpecifications);
336+
// capabilitiesBuilder.completions();
337+
// logger.info("Registered completions: " + completionSpecifications.size());
338+
// }
337339

338340
rootsChangeConsumer.ifAvailable(consumer -> {
339341
BiFunction<McpAsyncServerExchange, List<McpSchema.Root>, Mono<Void>> asyncConsumer = (exchange, roots) -> {

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@
308308
<okhttp3.version>4.12.0</okhttp3.version>
309309

310310
<!-- MCP-->
311-
<mcp.sdk.version>0.10.0-SNAPSHOT</mcp.sdk.version>
311+
<mcp.sdk.version>0.9.0</mcp.sdk.version>
312312

313313
<!-- plugin versions -->
314314
<antlr.version>4.13.1</antlr.version>

0 commit comments

Comments
 (0)