Class McpServerConfiguration
java.lang.Object
com.xebialabs.xlrelease.mcp.config.McpServerConfiguration
Stands up an MCP server on the bare MCP Java SDK (no Spring AI starter): a Jackson
JsonMapper
carrying XlrMcpJacksonModule, the SDK's Servlet transport, the McpSyncServer with tool
specs built by McpToolSpecifications from the McpToolset beans, and a
ServletRegistrationBean mounting the transport (default /s/mcp). Settings come from
XlrConfig (xl.features.mcp.server.*); McpServerEnabledFilter gates serving at
runtime.-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionmcpReadOnlyToolReconciler(io.modelcontextprotocol.server.McpSyncServer mcpSyncServer, McpServerConfiguration.McpToolSpecs toolSpecs, ExecutorService auxiliaryExecutor) org.springframework.boot.web.servlet.FilterRegistrationBean<McpServerEnabledFilter> mcpServerEnabledFilter(org.springframework.beans.factory.ObjectProvider<org.springframework.boot.webmvc.autoconfigure.WebMvcProperties> webMvcProperties) org.springframework.boot.web.servlet.ServletRegistrationBean<io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider> mcpServletRegistration(io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider transportProvider, org.springframework.beans.factory.ObjectProvider<org.springframework.boot.webmvc.autoconfigure.WebMvcProperties> webMvcProperties) io.modelcontextprotocol.server.McpSyncServermcpSyncServer(io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider transportProvider, McpServerConfiguration.McpToolSpecs toolSpecs) mcpToolSpecs(McpToolSpecifications toolSpecifications, List<McpToolset> toolsets) Builds the tool specs once from everyMcpToolsetbean in the main context — those declared in this module and those contributed by an installed plugin.io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider
-
Constructor Details
-
McpServerConfiguration
public McpServerConfiguration()
-
-
Method Details
-
mcpToolSpecifications
-
mcpToolSpecs
@Bean public McpServerConfiguration.McpToolSpecs mcpToolSpecs(McpToolSpecifications toolSpecifications, List<McpToolset> toolsets) Builds the tool specs once from everyMcpToolsetbean in the main context — those declared in this module and those contributed by an installed plugin. -
mcpTransportProvider
@Bean public io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider mcpTransportProvider() -
mcpSyncServer
@Bean public io.modelcontextprotocol.server.McpSyncServer mcpSyncServer(io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider transportProvider, McpServerConfiguration.McpToolSpecs toolSpecs) -
mcpReadOnlyToolReconciler
@Bean public McpReadOnlyToolReconciler mcpReadOnlyToolReconciler(io.modelcontextprotocol.server.McpSyncServer mcpSyncServer, McpServerConfiguration.McpToolSpecs toolSpecs, @Qualifier("auxiliary") ExecutorService auxiliaryExecutor) -
mcpServletRegistration
@Bean public org.springframework.boot.web.servlet.ServletRegistrationBean<io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider> mcpServletRegistration(io.modelcontextprotocol.server.transport.HttpServletStreamableServerTransportProvider transportProvider, org.springframework.beans.factory.ObjectProvider<org.springframework.boot.webmvc.autoconfigure.WebMvcProperties> webMvcProperties) -
mcpServerEnabledFilter
@Bean public org.springframework.boot.web.servlet.FilterRegistrationBean<McpServerEnabledFilter> mcpServerEnabledFilter(org.springframework.beans.factory.ObjectProvider<org.springframework.boot.webmvc.autoconfigure.WebMvcProperties> webMvcProperties)
-