Skip to main content

Module handler

Module handler 

Source
Expand description

Composable handler traits for MCP servers.

This module defines the traits that MCP servers can implement to handle different protocol capabilities. Unlike monolithic handler approaches, these traits are composable - implement only what you need.

§Overview

§Example

use mcpkit_server::{ServerHandler, ServerBuilder};
use mcpkit_core::capability::{ServerInfo, ServerCapabilities};

struct MyServer;

impl ServerHandler for MyServer {
    fn server_info(&self) -> ServerInfo {
        ServerInfo::new("my-server", "1.0.0")
    }

    fn capabilities(&self) -> ServerCapabilities {
        ServerCapabilities::new().with_tools()
    }
}

let server = ServerBuilder::new(MyServer).build();
assert_eq!(server.server_info().name, "my-server");

Enums§

LogLevel
The MCP logging severity, re-exported from core.

Traits§

CompletionHandler
Handler for completion suggestions (completion/complete).
PromptHandler
Handler for prompt-related operations.
ResourceHandler
Handler for resource-related operations.
ServerHandler
Core server handler trait - required for all MCP servers.
TaskHandler
Handler for task-related operations.
ToolHandler
Handler for tool-related operations.