From 391814bca0edf59b566608ffd00a5b4f74524992 Mon Sep 17 00:00:00 2001 From: Ali Hashemi Date: Sun, 2 Mar 2025 12:43:45 -0400 Subject: [PATCH] add missing MCPMessage trait for MessageFromClient --- src/generated_schema/2024_11_05/mcp_schema.rs | 2 +- .../2024_11_05/schema_utils.rs | 27 +++++++++++++++++++ src/generated_schema/draft/mcp_schema.rs | 2 +- src/generated_schema/draft/schema_utils.rs | 27 +++++++++++++++++++ 4 files changed, 56 insertions(+), 2 deletions(-) diff --git a/src/generated_schema/2024_11_05/mcp_schema.rs b/src/generated_schema/2024_11_05/mcp_schema.rs index 9c45b37..0f0b8e4 100644 --- a/src/generated_schema/2024_11_05/mcp_schema.rs +++ b/src/generated_schema/2024_11_05/mcp_schema.rs @@ -6,7 +6,7 @@ /// /// Generated from : /// Hash : bb1446ff1810a0df57989d78366d626d2c01b9d7 -/// Generated at : 2025-03-02 12:29:03 +/// Generated at : 2025-03-02 12:41:59 /// ---------------------------------------------------------------------------- /// /// MCP Protocol Version diff --git a/src/generated_schema/2024_11_05/schema_utils.rs b/src/generated_schema/2024_11_05/schema_utils.rs index 6048e18..cf16e3e 100644 --- a/src/generated_schema/2024_11_05/schema_utils.rs +++ b/src/generated_schema/2024_11_05/schema_utils.rs @@ -1327,6 +1327,33 @@ impl From for MessageFromClient { } } +impl MCPMessage for MessageFromClient { + fn is_response(&self) -> bool { + matches!(self, MessageFromClient::ResultFromClient(_)) + } + + fn is_request(&self) -> bool { + matches!(self, MessageFromClient::RequestFromClient(_)) + } + + fn is_notification(&self) -> bool { + matches!(self, MessageFromClient::NotificationFromClient(_)) + } + + fn is_error(&self) -> bool { + matches!(self, MessageFromClient::Error(_)) + } + + fn message_type(&self) -> MessageTypes { + match self { + MessageFromClient::RequestFromClient(_) => MessageTypes::Request, + MessageFromClient::ResultFromClient(_) => MessageTypes::Response, + MessageFromClient::NotificationFromClient(_) => MessageTypes::Notification, + MessageFromClient::Error(_) => MessageTypes::Error, + } + } +} + impl FromMessage for ClientMessage { fn from_message( message: MessageFromClient, diff --git a/src/generated_schema/draft/mcp_schema.rs b/src/generated_schema/draft/mcp_schema.rs index eba8228..784fd6f 100644 --- a/src/generated_schema/draft/mcp_schema.rs +++ b/src/generated_schema/draft/mcp_schema.rs @@ -6,7 +6,7 @@ /// /// Generated from : /// Hash : bb1446ff1810a0df57989d78366d626d2c01b9d7 -/// Generated at : 2025-03-02 12:29:04 +/// Generated at : 2025-03-02 12:41:59 /// ---------------------------------------------------------------------------- /// /// MCP Protocol Version diff --git a/src/generated_schema/draft/schema_utils.rs b/src/generated_schema/draft/schema_utils.rs index 9db2891..2c46067 100644 --- a/src/generated_schema/draft/schema_utils.rs +++ b/src/generated_schema/draft/schema_utils.rs @@ -1327,6 +1327,33 @@ impl From for MessageFromClient { } } +impl MCPMessage for MessageFromClient { + fn is_response(&self) -> bool { + matches!(self, MessageFromClient::ResultFromClient(_)) + } + + fn is_request(&self) -> bool { + matches!(self, MessageFromClient::RequestFromClient(_)) + } + + fn is_notification(&self) -> bool { + matches!(self, MessageFromClient::NotificationFromClient(_)) + } + + fn is_error(&self) -> bool { + matches!(self, MessageFromClient::Error(_)) + } + + fn message_type(&self) -> MessageTypes { + match self { + MessageFromClient::RequestFromClient(_) => MessageTypes::Request, + MessageFromClient::ResultFromClient(_) => MessageTypes::Response, + MessageFromClient::NotificationFromClient(_) => MessageTypes::Notification, + MessageFromClient::Error(_) => MessageTypes::Error, + } + } +} + impl FromMessage for ClientMessage { fn from_message( message: MessageFromClient,