Class WebMvcStatelessServerTransport

java.lang.Object
io.modelcontextprotocol.server.transport.WebMvcStatelessServerTransport
All Implemented Interfaces:
io.modelcontextprotocol.spec.McpStatelessServerTransport

public class WebMvcStatelessServerTransport extends Object implements io.modelcontextprotocol.spec.McpStatelessServerTransport
Implementation of a WebMVC based McpStatelessServerTransport.

This is the non-reactive version of io.modelcontextprotocol.server.transport.WebFluxStatelessServerTransport

Author:
Christian Tzolov
  • Method Details

    • setMcpHandler

      public void setMcpHandler(McpStatelessServerHandler mcpHandler)
      Specified by:
      setMcpHandler in interface io.modelcontextprotocol.spec.McpStatelessServerTransport
    • closeGracefully

      public reactor.core.publisher.Mono<Void> closeGracefully()
      Specified by:
      closeGracefully in interface io.modelcontextprotocol.spec.McpStatelessServerTransport
    • getRouterFunction

      public org.springframework.web.servlet.function.RouterFunction<org.springframework.web.servlet.function.ServerResponse> getRouterFunction()
      Returns the WebMVC router function that defines the transport's HTTP endpoints. This router function should be integrated into the application's web configuration.

      The router function defines one endpoint handling two HTTP methods:

      • GET {messageEndpoint} - Unsupported, returns 405 METHOD NOT ALLOWED
      • POST {messageEndpoint} - For handling client requests and notifications
      Returns:
      The configured RouterFunction for handling HTTP requests
    • builder

      public static WebMvcStatelessServerTransport.Builder builder()
      Create a builder for the server.
      Returns:
      a fresh WebMvcStatelessServerTransport.Builder instance.