Skip to content

Commit 837a958

Browse files
committed
Adress review comments
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
1 parent a5fa67b commit 837a958

File tree

8 files changed

+33
-41
lines changed

8 files changed

+33
-41
lines changed

mcp-core/src/main/java/io/modelcontextprotocol/server/McpAsyncServer.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -633,8 +633,9 @@ public Mono<Void> addResourceTemplate(
633633
* List all registered resource templates.
634634
* @return A Flux stream of all registered resource templates
635635
*/
636-
public Flux<McpSchema.Resource> listResourceTemplates() {
637-
return Flux.fromIterable(this.resources.values()).map(McpServerFeatures.AsyncResourceSpecification::resource);
636+
public Flux<McpSchema.ResourceTemplate> listResourceTemplates() {
637+
return Flux.fromIterable(this.resourceTemplates.values())
638+
.map(McpServerFeatures.AsyncResourceTemplateSpecification::resourceTemplate);
638639
}
639640

640641
/**
@@ -683,7 +684,6 @@ private McpRequestHandler<McpSchema.ListResourcesResult> resourcesListRequestHan
683684
var resourceList = this.resources.values()
684685
.stream()
685686
.map(McpServerFeatures.AsyncResourceSpecification::resource)
686-
// .filter(resource -> !resource.uri().contains("{"))
687687
.toList();
688688
return Mono.just(new McpSchema.ListResourcesResult(resourceList, null));
689689
};

mcp-core/src/main/java/io/modelcontextprotocol/server/McpSyncServer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ public void addResourceTemplate(McpServerFeatures.SyncResourceTemplateSpecificat
139139
* List all registered resource templates.
140140
* @return A list of all registered resource templates
141141
*/
142-
public List<McpSchema.Resource> listResourceTemplates() {
142+
public List<McpSchema.ResourceTemplate> listResourceTemplates() {
143143
return this.asyncServer.listResourceTemplates().collectList().block();
144144
}
145145

mcp-core/src/main/java/io/modelcontextprotocol/spec/McpSchema.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -904,7 +904,7 @@ public static class Builder {
904904

905905
private Map<String, Object> meta;
906906

907-
public Builder uri(String uri) {
907+
public Builder uriTemplate(String uri) {
908908
this.uriTemplate = uri;
909909
return this;
910910
}

mcp-core/src/test/java/io/modelcontextprotocol/server/AbstractMcpAsyncServerTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -437,7 +437,7 @@ void testAddResourceTemplate() {
437437
.build();
438438

439439
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
440-
.uri("test://template/{id}")
440+
.uriTemplate("test://template/{id}")
441441
.name("test-template")
442442
.description("Test resource template")
443443
.mimeType("text/plain")
@@ -457,7 +457,7 @@ void testAddResourceTemplateWithoutCapability() {
457457
McpAsyncServer serverWithoutResources = prepareAsyncServerBuilder().serverInfo("test-server", "1.0.0").build();
458458

459459
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
460-
.uri("test://template/{id}")
460+
.uriTemplate("test://template/{id}")
461461
.name("test-template")
462462
.description("Test resource template")
463463
.mimeType("text/plain")
@@ -475,7 +475,7 @@ void testAddResourceTemplateWithoutCapability() {
475475
@Test
476476
void testRemoveResourceTemplate() {
477477
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
478-
.uri("test://template/{id}")
478+
.uriTemplate("test://template/{id}")
479479
.name("test-template")
480480
.description("Test resource template")
481481
.mimeType("text/plain")
@@ -523,7 +523,7 @@ void testRemoveNonexistentResourceTemplate() {
523523
@Test
524524
void testListResourceTemplates() {
525525
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
526-
.uri("test://template/{id}")
526+
.uriTemplate("test://template/{id}")
527527
.name("test-template")
528528
.description("Test resource template")
529529
.mimeType("text/plain")

mcp-core/src/test/java/io/modelcontextprotocol/server/AbstractMcpSyncServerTests.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@ void testAddResourceTemplate() {
424424
.build();
425425

426426
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
427-
.uri("test://template/{id}")
427+
.uriTemplate("test://template/{id}")
428428
.name("test-template")
429429
.description("Test resource template")
430430
.mimeType("text/plain")
@@ -444,7 +444,7 @@ void testAddResourceTemplateWithoutCapability() {
444444
var serverWithoutResources = prepareSyncServerBuilder().serverInfo("test-server", "1.0.0").build();
445445

446446
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
447-
.uri("test://template/{id}")
447+
.uriTemplate("test://template/{id}")
448448
.name("test-template")
449449
.description("Test resource template")
450450
.mimeType("text/plain")
@@ -461,7 +461,7 @@ void testAddResourceTemplateWithoutCapability() {
461461
@Test
462462
void testRemoveResourceTemplate() {
463463
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
464-
.uri("test://template/{id}")
464+
.uriTemplate("test://template/{id}")
465465
.name("test-template")
466466
.description("Test resource template")
467467
.mimeType("text/plain")
@@ -508,7 +508,7 @@ void testRemoveNonexistentResourceTemplate() {
508508
@Test
509509
void testListResourceTemplates() {
510510
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
511-
.uri("test://template/{id}")
511+
.uriTemplate("test://template/{id}")
512512
.name("test-template")
513513
.description("Test resource template")
514514
.mimeType("text/plain")
@@ -522,12 +522,8 @@ void testListResourceTemplates() {
522522
.resourceTemplates(specification)
523523
.build();
524524

525-
List<McpSchema.Resource> templates = mcpSyncServer.listResourceTemplates();
525+
List<McpSchema.ResourceTemplate> templates = mcpSyncServer.listResourceTemplates();
526526

527-
// Note: Based on the current implementation, listResourceTemplates() returns
528-
// List<Resource>
529-
// This appears to be a bug in the implementation that should return
530-
// List<ResourceTemplate>
531527
assertThat(templates).isNotNull();
532528

533529
assertThatCode(() -> mcpSyncServer.closeGracefully()).doesNotThrowAnyException();

mcp-core/src/test/java/io/modelcontextprotocol/server/ResourceTemplateManagementTests.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ void testAddResourceTemplate() {
6363
.build();
6464

6565
ResourceTemplate template = ResourceTemplate.builder()
66-
.uri(TEST_TEMPLATE_URI)
66+
.uriTemplate(TEST_TEMPLATE_URI)
6767
.name(TEST_TEMPLATE_NAME)
6868
.description("Test resource template")
6969
.mimeType("text/plain")
@@ -83,7 +83,7 @@ void testAddResourceTemplateWithoutCapability() {
8383
.build();
8484

8585
ResourceTemplate template = ResourceTemplate.builder()
86-
.uri(TEST_TEMPLATE_URI)
86+
.uriTemplate(TEST_TEMPLATE_URI)
8787
.name(TEST_TEMPLATE_NAME)
8888
.description("Test resource template")
8989
.mimeType("text/plain")
@@ -104,7 +104,7 @@ void testAddResourceTemplateWithoutCapability() {
104104
@Test
105105
void testRemoveResourceTemplate() {
106106
ResourceTemplate template = ResourceTemplate.builder()
107-
.uri(TEST_TEMPLATE_URI)
107+
.uriTemplate(TEST_TEMPLATE_URI)
108108
.name(TEST_TEMPLATE_NAME)
109109
.description("Test resource template")
110110
.mimeType("text/plain")
@@ -155,14 +155,14 @@ void testRemoveNonexistentResourceTemplate() {
155155
@Test
156156
void testReplaceExistingResourceTemplate() {
157157
ResourceTemplate originalTemplate = ResourceTemplate.builder()
158-
.uri(TEST_TEMPLATE_URI)
158+
.uriTemplate(TEST_TEMPLATE_URI)
159159
.name(TEST_TEMPLATE_NAME)
160160
.description("Original template")
161161
.mimeType("text/plain")
162162
.build();
163163

164164
ResourceTemplate updatedTemplate = ResourceTemplate.builder()
165-
.uri(TEST_TEMPLATE_URI)
165+
.uriTemplate(TEST_TEMPLATE_URI)
166166
.name(TEST_TEMPLATE_NAME)
167167
.description("Updated template")
168168
.mimeType("application/json")
@@ -191,7 +191,7 @@ void testReplaceExistingResourceTemplate() {
191191
@Test
192192
void testSyncAddResourceTemplate() {
193193
ResourceTemplate template = ResourceTemplate.builder()
194-
.uri(TEST_TEMPLATE_URI)
194+
.uriTemplate(TEST_TEMPLATE_URI)
195195
.name(TEST_TEMPLATE_NAME)
196196
.description("Test resource template")
197197
.mimeType("text/plain")
@@ -213,7 +213,7 @@ void testSyncAddResourceTemplate() {
213213
@Test
214214
void testSyncRemoveResourceTemplate() {
215215
ResourceTemplate template = ResourceTemplate.builder()
216-
.uri(TEST_TEMPLATE_URI)
216+
.uriTemplate(TEST_TEMPLATE_URI)
217217
.name(TEST_TEMPLATE_NAME)
218218
.description("Test resource template")
219219
.mimeType("text/plain")
@@ -240,14 +240,14 @@ void testSyncRemoveResourceTemplate() {
240240
@Test
241241
void testResourceTemplateMapBasedStorage() {
242242
ResourceTemplate template1 = ResourceTemplate.builder()
243-
.uri("test://template1/{id}")
243+
.uriTemplate("test://template1/{id}")
244244
.name("template1")
245245
.description("First template")
246246
.mimeType("text/plain")
247247
.build();
248248

249249
ResourceTemplate template2 = ResourceTemplate.builder()
250-
.uri("test://template2/{id}")
250+
.uriTemplate("test://template2/{id}")
251251
.name("template2")
252252
.description("Second template")
253253
.mimeType("application/json")
@@ -275,7 +275,7 @@ void testResourceTemplateMapBasedStorage() {
275275
void testResourceTemplateBuilderWithMap() {
276276
// Test that the new Map-based builder methods work correctly
277277
ResourceTemplate template = ResourceTemplate.builder()
278-
.uri(TEST_TEMPLATE_URI)
278+
.uriTemplate(TEST_TEMPLATE_URI)
279279
.name(TEST_TEMPLATE_NAME)
280280
.description("Test resource template")
281281
.mimeType("text/plain")

mcp-test/src/main/java/io/modelcontextprotocol/server/AbstractMcpAsyncServerTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -441,7 +441,7 @@ void testAddResourceTemplate() {
441441
.build();
442442

443443
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
444-
.uri("test://template/{id}")
444+
.uriTemplate("test://template/{id}")
445445
.name("test-template")
446446
.description("Test resource template")
447447
.mimeType("text/plain")
@@ -461,7 +461,7 @@ void testAddResourceTemplateWithoutCapability() {
461461
McpAsyncServer serverWithoutResources = prepareAsyncServerBuilder().serverInfo("test-server", "1.0.0").build();
462462

463463
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
464-
.uri("test://template/{id}")
464+
.uriTemplate("test://template/{id}")
465465
.name("test-template")
466466
.description("Test resource template")
467467
.mimeType("text/plain")
@@ -479,7 +479,7 @@ void testAddResourceTemplateWithoutCapability() {
479479
@Test
480480
void testRemoveResourceTemplate() {
481481
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
482-
.uri("test://template/{id}")
482+
.uriTemplate("test://template/{id}")
483483
.name("test-template")
484484
.description("Test resource template")
485485
.mimeType("text/plain")
@@ -527,7 +527,7 @@ void testRemoveNonexistentResourceTemplate() {
527527
@Test
528528
void testListResourceTemplates() {
529529
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
530-
.uri("test://template/{id}")
530+
.uriTemplate("test://template/{id}")
531531
.name("test-template")
532532
.description("Test resource template")
533533
.mimeType("text/plain")

mcp-test/src/main/java/io/modelcontextprotocol/server/AbstractMcpSyncServerTests.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,7 @@ void testAddResourceTemplate() {
423423
.build();
424424

425425
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
426-
.uri("test://template/{id}")
426+
.uriTemplate("test://template/{id}")
427427
.name("test-template")
428428
.description("Test resource template")
429429
.mimeType("text/plain")
@@ -443,7 +443,7 @@ void testAddResourceTemplateWithoutCapability() {
443443
var serverWithoutResources = prepareSyncServerBuilder().serverInfo("test-server", "1.0.0").build();
444444

445445
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
446-
.uri("test://template/{id}")
446+
.uriTemplate("test://template/{id}")
447447
.name("test-template")
448448
.description("Test resource template")
449449
.mimeType("text/plain")
@@ -460,7 +460,7 @@ void testAddResourceTemplateWithoutCapability() {
460460
@Test
461461
void testRemoveResourceTemplate() {
462462
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
463-
.uri("test://template/{id}")
463+
.uriTemplate("test://template/{id}")
464464
.name("test-template")
465465
.description("Test resource template")
466466
.mimeType("text/plain")
@@ -507,7 +507,7 @@ void testRemoveNonexistentResourceTemplate() {
507507
@Test
508508
void testListResourceTemplates() {
509509
McpSchema.ResourceTemplate template = McpSchema.ResourceTemplate.builder()
510-
.uri("test://template/{id}")
510+
.uriTemplate("test://template/{id}")
511511
.name("test-template")
512512
.description("Test resource template")
513513
.mimeType("text/plain")
@@ -521,12 +521,8 @@ void testListResourceTemplates() {
521521
.resourceTemplates(specification)
522522
.build();
523523

524-
List<McpSchema.Resource> templates = mcpSyncServer.listResourceTemplates();
524+
List<McpSchema.ResourceTemplate> templates = mcpSyncServer.listResourceTemplates();
525525

526-
// Note: Based on the current implementation, listResourceTemplates() returns
527-
// List<Resource>
528-
// This appears to be a bug in the implementation that should return
529-
// List<ResourceTemplate>
530526
assertThat(templates).isNotNull();
531527

532528
assertThatCode(() -> mcpSyncServer.closeGracefully()).doesNotThrowAnyException();

0 commit comments

Comments
 (0)