public interface McpServerTransportProviderBase
The lifecycle of the provider dictates that it be created first, upon application
startup, and then passed into either
McpServer.sync(McpServerTransportProvider)
or
McpServer.async(McpServerTransportProvider)
. As
a result of the MCP server creation, the provider will be notified of a
McpServerSession.Factory
which will be used to handle a 1:1 communication
between a newly connected client and the server. The provider's responsibility is to
create instances of McpServerTransport
that the session will utilise during the
session lifetime.
Finally, the McpServerTransport
s can be closed in bulk when close()
or
closeGracefully()
are called as part of the normal application shutdown event.
Individual McpServerTransport
s can also be closed on a per-session basis, where
the McpServerSession.close()
or McpServerSession.closeGracefully()
closes the provided transport.
限定符和类型 | 方法和说明 |
---|---|
default void |
close()
Immediately closes all the transports with connected clients and releases any
associated resources.
|
reactor.core.publisher.Mono<java.lang.Void> |
closeGracefully()
Gracefully closes all the transports with connected clients and releases any
associated resources asynchronously.
|
reactor.core.publisher.Mono<java.lang.Void> |
notifyClients(java.lang.String method,
java.lang.Object params)
Sends a notification to all connected clients.
|
default java.util.List<java.lang.String> |
protocolVersions()
Returns the protocol version supported by this transport provider.
|
reactor.core.publisher.Mono<java.lang.Void> notifyClients(java.lang.String method, java.lang.Object params)
method
- the name of the notification method to be called on the clientsparams
- parameters to be sent with the notificationMcpSession#sendNotification(String, Map)
default void close()
reactor.core.publisher.Mono<java.lang.Void> closeGracefully()
Mono
that completes when the connections have been closed.default java.util.List<java.lang.String> protocolVersions()