Class DefaultMcpReadResourceResultConverter

java.lang.Object
org.springframework.ai.mcp.annotation.method.resource.DefaultMcpReadResourceResultConverter
All Implemented Interfaces:
McpReadResourceResultConverter

public class DefaultMcpReadResourceResultConverter extends Object implements McpReadResourceResultConverter
Default implementation of McpReadResourceResultConverter.

This class provides a standard implementation for converting various return types from resource methods to a standardized McpSchema.ReadResourceResult format.

Author:
Christian Tzolov, Alexandros Pappas, Vadzim Shurmialiou, Craig Walls
  • Constructor Details

    • DefaultMcpReadResourceResultConverter

      public DefaultMcpReadResourceResultConverter()
  • Method Details

    • convertToReadResourceResult

      public io.modelcontextprotocol.spec.McpSchema.ReadResourceResult convertToReadResourceResult(Object result, String requestUri, String mimeType, AbstractMcpResourceMethodCallback.ContentType contentType)
      Converts the method's return value to a McpSchema.ReadResourceResult.

      This method handles various return types and converts them to a standardized McpSchema.ReadResourceResult format.

      Specified by:
      convertToReadResourceResult in interface McpReadResourceResultConverter
      Parameters:
      result - The method's return value
      requestUri - The original request URI
      mimeType - The MIME type of the resource
      contentType - The content type of the resource
      Returns:
      A McpSchema.ReadResourceResult containing the appropriate resource contents
      Throws:
      IllegalArgumentException - if the return type is not supported
    • convertToReadResourceResult

      public io.modelcontextprotocol.spec.McpSchema.ReadResourceResult convertToReadResourceResult(Object result, String requestUri, String mimeType, AbstractMcpResourceMethodCallback.ContentType contentType, Map<String,Object> meta)
      Converts the method's return value to a McpSchema.ReadResourceResult, propagating resource-level metadata to the content items.
      Specified by:
      convertToReadResourceResult in interface McpReadResourceResultConverter
      Parameters:
      result - The method's return value
      requestUri - The original request URI
      mimeType - The MIME type of the resource
      contentType - The content type of the resource
      meta - The resource-level metadata to propagate to content items
      Returns:
      A McpSchema.ReadResourceResult containing the appropriate resource contents
      Throws:
      IllegalArgumentException - if the return type is not supported