Trait FromMessage

Source
pub trait FromMessage<T>
where Self: Sized,
{ // Required method fn from_message( message: T, request_id: Option<RequestId>, ) -> Result<Self, RpcError>; }
Expand description

A trait for converting a message of type T into Self. This is useful for transforming mcp messages into a Type that could be serialized into a JsonrpcMessage.

For example, a ServerMessage can be constructed from a rust_mcp_schema::PingRequest by attaching a RequestId. Eventually, the ServerMessage can be serialized into a valid JsonrpcMessage for transmission over the transport.

Required Methods§

Source

fn from_message( message: T, request_id: Option<RequestId>, ) -> Result<Self, RpcError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl FromMessage<MessageFromClient> for ClientMessage

Source§

impl FromMessage<MessageFromServer> for ServerMessage

Source§

impl FromMessage<CallToolRequest> for ClientMessage

Source§

impl FromMessage<CallToolResult> for ServerMessage

Source§

impl FromMessage<CancelledNotification> for ClientMessage

Source§

impl FromMessage<CancelledNotification> for ServerMessage

Source§

impl FromMessage<CompleteRequest> for ClientMessage

Source§

impl FromMessage<CompleteResult> for ServerMessage

Source§

impl FromMessage<CreateMessageRequest> for ServerMessage

Source§

impl FromMessage<CreateMessageResult> for ClientMessage

Source§

impl FromMessage<GetPromptRequest> for ClientMessage

Source§

impl FromMessage<GetPromptResult> for ServerMessage

Source§

impl FromMessage<InitializeRequest> for ClientMessage

Source§

impl FromMessage<InitializeResult> for ServerMessage

Source§

impl FromMessage<InitializedNotification> for ClientMessage

Source§

impl FromMessage<ListPromptsRequest> for ClientMessage

Source§

impl FromMessage<ListPromptsResult> for ServerMessage

Source§

impl FromMessage<ListResourceTemplatesRequest> for ClientMessage

Source§

impl FromMessage<ListResourceTemplatesResult> for ServerMessage

Source§

impl FromMessage<ListResourcesRequest> for ClientMessage

Source§

impl FromMessage<ListResourcesResult> for ServerMessage

Source§

impl FromMessage<ListRootsRequest> for ServerMessage

Source§

impl FromMessage<ListRootsResult> for ClientMessage

Source§

impl FromMessage<ListToolsRequest> for ClientMessage

Source§

impl FromMessage<ListToolsResult> for ServerMessage

Source§

impl FromMessage<LoggingMessageNotification> for ServerMessage

Source§

impl FromMessage<PingRequest> for ClientMessage

Source§

impl FromMessage<PingRequest> for ServerMessage

Source§

impl FromMessage<ProgressNotification> for ClientMessage

Source§

impl FromMessage<ProgressNotification> for ServerMessage

Source§

impl FromMessage<PromptListChangedNotification> for ServerMessage

Source§

impl FromMessage<ReadResourceRequest> for ClientMessage

Source§

impl FromMessage<ReadResourceResult> for ServerMessage

Source§

impl FromMessage<ResourceListChangedNotification> for ServerMessage

Source§

impl FromMessage<ResourceUpdatedNotification> for ServerMessage

Source§

impl FromMessage<Result> for ClientMessage

Source§

impl FromMessage<Result> for ServerMessage

Source§

impl FromMessage<RootsListChangedNotification> for ClientMessage

Source§

impl FromMessage<SetLevelRequest> for ClientMessage

Source§

impl FromMessage<SubscribeRequest> for ClientMessage

Source§

impl FromMessage<ToolListChangedNotification> for ServerMessage

Source§

impl FromMessage<UnsubscribeRequest> for ClientMessage