diff --git a/src/main/java/mcp/tools/McpValidatedTool.java b/src/main/java/mcp/tools/McpValidatedTool.java index 1ea8ca8..048bd90 100644 --- a/src/main/java/mcp/tools/McpValidatedTool.java +++ b/src/main/java/mcp/tools/McpValidatedTool.java @@ -66,6 +66,17 @@ public abstract class McpValidatedTool implements McpTool { return new CallToolResultBuilder().addText(text).build(); } + protected McpSchema.CallToolResult success(String text, Map structured) { + return new CallToolResultBuilder() + .addText(text) + .structuredContent(structured) + .build(); + } + + protected McpSchema.CallToolResult successResult(Object resultValue) { + return success(String.valueOf(resultValue), Map.of("result", resultValue)); + } + protected McpSchema.CallToolResult error(String text) { return new CallToolResultBuilder().isError(true).addText(text).build(); } diff --git a/src/test/java/mcp/registry/ToolRegistryTest.java b/src/test/java/mcp/registry/ToolRegistryTest.java index c92f1a1..f93be41 100644 --- a/src/test/java/mcp/registry/ToolRegistryTest.java +++ b/src/test/java/mcp/registry/ToolRegistryTest.java @@ -1,12 +1,13 @@ package mcp.registry; import io.modelcontextprotocol.server.McpStatelessSyncServer; -import io.modelcontextprotocol.spec.McpSchema; import mcp.tools.McpTool; import org.junit.jupiter.api.Test; + import java.util.Set; -import java.util.Map; -import static org.junit.jupiter.api.Assertions.*; + +import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.*; public class ToolRegistryTest {