pub enum JsonRpcMessage {
Request(JsonRpcRequest),
Response(JsonRpcResponse),
Notification(JsonRpcNotification),
RequestBatch(JsonRpcBatch<JsonRpcRequest>),
ResponseBatch(JsonRpcBatch<JsonRpcResponse>),
MessageBatch(JsonRpcBatch<JsonRpcMessage>),
}Expand description
JSON-RPC message type (union of request, response, notification)
MCP 2025-06-18 Compliance Note: Batch variants exist only for defensive deserialization and are NOT supported per MCP specification (PR #416 removed batch support). They will return errors if encountered.
Variants§
Request(JsonRpcRequest)
Request message (MCP-compliant)
Response(JsonRpcResponse)
Response message (MCP-compliant)
Notification(JsonRpcNotification)
Notification message (MCP-compliant)
RequestBatch(JsonRpcBatch<JsonRpcRequest>)
Batch of messages (NOT SUPPORTED - defensive deserialization only)
Deprecated: MCP 2025-06-18 removed batch support. This variant exists only to return proper errors if batches are received.
ResponseBatch(JsonRpcBatch<JsonRpcResponse>)
Batch of responses (NOT SUPPORTED - defensive deserialization only)
Deprecated: MCP 2025-06-18 removed batch support. This variant exists only to return proper errors if batches are received.
MessageBatch(JsonRpcBatch<JsonRpcMessage>)
Mixed batch (NOT SUPPORTED - defensive deserialization only)
Deprecated: MCP 2025-06-18 removed batch support. This variant exists only to return proper errors if batches are received.
Trait Implementations§
Source§impl Clone for JsonRpcMessage
impl Clone for JsonRpcMessage
Source§fn clone(&self) -> JsonRpcMessage
fn clone(&self) -> JsonRpcMessage
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for JsonRpcMessage
impl Debug for JsonRpcMessage
Source§impl<'de> Deserialize<'de> for JsonRpcMessage
impl<'de> Deserialize<'de> for JsonRpcMessage
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for JsonRpcMessage
impl RefUnwindSafe for JsonRpcMessage
impl Send for JsonRpcMessage
impl Sync for JsonRpcMessage
impl Unpin for JsonRpcMessage
impl UnwindSafe for JsonRpcMessage
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)