Skip to main content

ExtensionHandler

Trait ExtensionHandler 

Source
pub trait ExtensionHandler<Request, Response>: Send + Sync {
    // Required method
    fn handle(
        &self,
        context: &McpContext,
        request: Request,
    ) -> McpResult<Response>;
}
Expand description

A typed implementation for one client-to-server extension request.

The supplied McpContext is the caller’s request context. Implementations must preserve its cancellation and budget ownership rather than creating a detached runtime context.

Required Methods§

Source

fn handle(&self, context: &McpContext, request: Request) -> McpResult<Response>

Handles one already-admitted extension request.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<Request, Response, Handler> ExtensionHandler<Request, Response> for Handler
where Handler: Fn(&McpContext, Request) -> McpResult<Response> + Send + Sync,