Skip to main content

fastmcp.server.low_level

Classes

MiddlewareServerSession

ServerSession that routes initialization requests through FastMCP middleware. Methods:

fastmcp

fastmcp(self) -> FastMCP
Get the FastMCP instance.

LowLevelServer

Methods:

fastmcp

fastmcp(self) -> FastMCP
Get the FastMCP instance.

create_initialization_options

create_initialization_options(self, notification_options: NotificationOptions | None = None, experimental_capabilities: dict[str, dict[str, Any]] | None = None, **kwargs: Any) -> InitializationOptions

run

run(self, read_stream: MemoryObjectReceiveStream[SessionMessage | Exception], write_stream: MemoryObjectSendStream[SessionMessage], initialization_options: InitializationOptions, raise_exceptions: bool = False, stateless: bool = False)
Overrides the run method to use the MiddlewareServerSession.

read_resource

read_resource(self) -> Callable[[Callable[[AnyUrl], Awaitable[mcp.types.ReadResourceResult | mcp.types.CreateTaskResult]]], Callable[[AnyUrl], Awaitable[mcp.types.ReadResourceResult | mcp.types.CreateTaskResult]]]
Decorator for registering a read_resource handler with CreateTaskResult support. The MCP SDK’s read_resource decorator does not support returning CreateTaskResult for background task execution. This decorator wraps the result in ServerResult. This decorator can be removed once the MCP SDK adds native CreateTaskResult support for resources.

get_prompt

get_prompt(self) -> Callable[[Callable[[str, dict[str, Any] | None], Awaitable[mcp.types.GetPromptResult | mcp.types.CreateTaskResult]]], Callable[[str, dict[str, Any] | None], Awaitable[mcp.types.GetPromptResult | mcp.types.CreateTaskResult]]]
Decorator for registering a get_prompt handler with CreateTaskResult support. The MCP SDK’s get_prompt decorator does not support returning CreateTaskResult for background task execution. This decorator wraps the result in ServerResult. This decorator can be removed once the MCP SDK adds native CreateTaskResult support for prompts.