From 5f902f8fb05ae2388678ebc358079fb693b8656d Mon Sep 17 00:00:00 2001 From: echo Date: Tue, 27 May 2025 09:18:54 +0900 Subject: [PATCH 1/4] Fix typo MCP uri template manager factory for default --- .../server/McpAsyncServer.java | 14 +++++++++----- .../io/modelcontextprotocol/server/McpServer.java | 6 +++--- ...va => DefaultMcpUriTemplateManagerFactory.java} | 2 +- .../McpUriTemplateManagerTests.java | 4 ++-- 4 files changed, 15 insertions(+), 11 deletions(-) rename mcp/src/main/java/io/modelcontextprotocol/util/{DeafaultMcpUriTemplateManagerFactory.java => DefaultMcpUriTemplateManagerFactory.java} (86%) diff --git a/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java b/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java index 02ad955b9..4b0e0d9af 100644 --- a/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java +++ b/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java @@ -28,7 +28,7 @@ import io.modelcontextprotocol.spec.McpSchema.Tool; import io.modelcontextprotocol.spec.McpServerSession; import io.modelcontextprotocol.spec.McpServerTransportProvider; -import io.modelcontextprotocol.util.DeafaultMcpUriTemplateManagerFactory; +import io.modelcontextprotocol.util.DefaultMcpUriTemplateManagerFactory; import io.modelcontextprotocol.util.McpUriTemplateManagerFactory; import io.modelcontextprotocol.util.Utils; import org.slf4j.Logger; @@ -108,7 +108,7 @@ public class McpAsyncServer { private List protocolVersions = List.of(McpSchema.LATEST_PROTOCOL_VERSION); - private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DeafaultMcpUriTemplateManagerFactory(); + private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DefaultMcpUriTemplateManagerFactory(); /** * Create a new McpAsyncServer with the given transport provider and capabilities. @@ -117,9 +117,13 @@ public class McpAsyncServer { * @param features The MCP server supported features. * @param objectMapper The ObjectMapper to use for JSON serialization/deserialization */ - McpAsyncServer(McpServerTransportProvider mcpTransportProvider, ObjectMapper objectMapper, - McpServerFeatures.Async features, Duration requestTimeout, - McpUriTemplateManagerFactory uriTemplateManagerFactory) { + McpAsyncServer( + McpServerTransportProvider mcpTransportProvider, + ObjectMapper objectMapper, + McpServerFeatures.Async features, + Duration requestTimeout, + McpUriTemplateManagerFactory uriTemplateManagerFactory + ) { this.mcpTransportProvider = mcpTransportProvider; this.objectMapper = objectMapper; this.serverInfo = features.serverInfo(); diff --git a/mcp/src/main/java/io/modelcontextprotocol/server/McpServer.java b/mcp/src/main/java/io/modelcontextprotocol/server/McpServer.java index d6ec2cc30..9fbe39ab0 100644 --- a/mcp/src/main/java/io/modelcontextprotocol/server/McpServer.java +++ b/mcp/src/main/java/io/modelcontextprotocol/server/McpServer.java @@ -19,7 +19,7 @@ import io.modelcontextprotocol.spec.McpSchema.ResourceTemplate; import io.modelcontextprotocol.spec.McpServerTransportProvider; import io.modelcontextprotocol.util.Assert; -import io.modelcontextprotocol.util.DeafaultMcpUriTemplateManagerFactory; +import io.modelcontextprotocol.util.DefaultMcpUriTemplateManagerFactory; import io.modelcontextprotocol.util.McpUriTemplateManagerFactory; import reactor.core.publisher.Mono; @@ -158,7 +158,7 @@ class AsyncSpecification { private final McpServerTransportProvider transportProvider; - private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DeafaultMcpUriTemplateManagerFactory(); + private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DefaultMcpUriTemplateManagerFactory(); private ObjectMapper objectMapper; @@ -648,7 +648,7 @@ class SyncSpecification { private static final McpSchema.Implementation DEFAULT_SERVER_INFO = new McpSchema.Implementation("mcp-server", "1.0.0"); - private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DeafaultMcpUriTemplateManagerFactory(); + private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DefaultMcpUriTemplateManagerFactory(); private final McpServerTransportProvider transportProvider; diff --git a/mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java b/mcp/src/main/java/io/modelcontextprotocol/util/DefaultMcpUriTemplateManagerFactory.java similarity index 86% rename from mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java rename to mcp/src/main/java/io/modelcontextprotocol/util/DefaultMcpUriTemplateManagerFactory.java index 3870b76fc..e7029d716 100644 --- a/mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java +++ b/mcp/src/main/java/io/modelcontextprotocol/util/DefaultMcpUriTemplateManagerFactory.java @@ -6,7 +6,7 @@ /** * @author Christian Tzolov */ -public class DeafaultMcpUriTemplateManagerFactory implements McpUriTemplateManagerFactory { +public class DefaultMcpUriTemplateManagerFactory implements McpUriTemplateManagerFactory { /** * Creates a new instance of {@link McpUriTemplateManager} with the specified URI diff --git a/mcp/src/test/java/io/modelcontextprotocol/McpUriTemplateManagerTests.java b/mcp/src/test/java/io/modelcontextprotocol/McpUriTemplateManagerTests.java index 6f041daa6..aa401c9e6 100644 --- a/mcp/src/test/java/io/modelcontextprotocol/McpUriTemplateManagerTests.java +++ b/mcp/src/test/java/io/modelcontextprotocol/McpUriTemplateManagerTests.java @@ -12,7 +12,7 @@ import java.util.List; import java.util.Map; -import io.modelcontextprotocol.util.DeafaultMcpUriTemplateManagerFactory; +import io.modelcontextprotocol.util.DefaultMcpUriTemplateManagerFactory; import io.modelcontextprotocol.util.McpUriTemplateManager; import io.modelcontextprotocol.util.McpUriTemplateManagerFactory; import org.junit.jupiter.api.BeforeEach; @@ -29,7 +29,7 @@ public class McpUriTemplateManagerTests { @BeforeEach void setUp() { - this.uriTemplateFactory = new DeafaultMcpUriTemplateManagerFactory(); + this.uriTemplateFactory = new DefaultMcpUriTemplateManagerFactory(); } @Test From a583758951efff7bf5405c3ac2f55478cc3f2fb6 Mon Sep 17 00:00:00 2001 From: echo Date: Tue, 27 May 2025 09:20:53 +0900 Subject: [PATCH 2/4] Remove a useless instance and finalize the injecting property --- .../java/io/modelcontextprotocol/server/McpAsyncServer.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java b/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java index 4b0e0d9af..69b42fa55 100644 --- a/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java +++ b/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java @@ -28,7 +28,6 @@ import io.modelcontextprotocol.spec.McpSchema.Tool; import io.modelcontextprotocol.spec.McpServerSession; import io.modelcontextprotocol.spec.McpServerTransportProvider; -import io.modelcontextprotocol.util.DefaultMcpUriTemplateManagerFactory; import io.modelcontextprotocol.util.McpUriTemplateManagerFactory; import io.modelcontextprotocol.util.Utils; import org.slf4j.Logger; @@ -108,7 +107,7 @@ public class McpAsyncServer { private List protocolVersions = List.of(McpSchema.LATEST_PROTOCOL_VERSION); - private McpUriTemplateManagerFactory uriTemplateManagerFactory = new DefaultMcpUriTemplateManagerFactory(); + private final McpUriTemplateManagerFactory uriTemplateManagerFactory; /** * Create a new McpAsyncServer with the given transport provider and capabilities. From fd62f2dfadef39d5f779c4aeefc686fdb4dde9e6 Mon Sep 17 00:00:00 2001 From: echo Date: Wed, 28 May 2025 11:09:47 +0900 Subject: [PATCH 3/4] Recreate DeafaultMcpUriTemplateManagerFactory for compatibility --- .../DeafaultMcpUriTemplateManagerFactory.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java diff --git a/mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java b/mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java new file mode 100644 index 000000000..654ab13c6 --- /dev/null +++ b/mcp/src/main/java/io/modelcontextprotocol/util/DeafaultMcpUriTemplateManagerFactory.java @@ -0,0 +1,26 @@ +/* +* Copyright 2025 - 2025 the original author or authors. +*/ +package io.modelcontextprotocol.util; + +/** + * @deprecated Use {@link DefaultMcpUriTemplateManagerFactory} instead. This + * class will be removed in future versions. + * @author Christian Tzolov + */ +@Deprecated +public class DeafaultMcpUriTemplateManagerFactory implements McpUriTemplateManagerFactory { + + /** + * Creates a new instance of {@link McpUriTemplateManager} with the specified URI + * template. + * + * @param uriTemplate The URI template to be used for variable extraction + * @return A new instance of {@link McpUriTemplateManager} + * @throws IllegalArgumentException if the URI template is null or empty + */ + @Override + public McpUriTemplateManager create(String uriTemplate) { + return new DefaultMcpUriTemplateManager(uriTemplate); + } +} From 78235bda9c663af551fa9bcaa5d042f1f163727a Mon Sep 17 00:00:00 2001 From: echo Date: Wed, 28 May 2025 11:10:25 +0900 Subject: [PATCH 4/4] fix indentation --- .../io/modelcontextprotocol/server/McpAsyncServer.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java b/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java index 69b42fa55..976a29001 100644 --- a/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java +++ b/mcp/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java @@ -117,11 +117,11 @@ public class McpAsyncServer { * @param objectMapper The ObjectMapper to use for JSON serialization/deserialization */ McpAsyncServer( - McpServerTransportProvider mcpTransportProvider, - ObjectMapper objectMapper, - McpServerFeatures.Async features, - Duration requestTimeout, - McpUriTemplateManagerFactory uriTemplateManagerFactory + McpServerTransportProvider mcpTransportProvider, + ObjectMapper objectMapper, + McpServerFeatures.Async features, + Duration requestTimeout, + McpUriTemplateManagerFactory uriTemplateManagerFactory ) { this.mcpTransportProvider = mcpTransportProvider; this.objectMapper = objectMapper;