Skip to content

Releases: rust-mcp-stack/rust-mcp-schema

v0.4.0

26 Apr 22:19
870e70e
Compare
Choose a tag to compare

0.4.0 (2025-04-26)

⚠ BREAKING CHANGES

  • added new draft version and update 2025_03_26 (#66)
  • renamed and deprecated the RPCMessage and MCPMessage traits in favor of RpcMessage and McpMessage.respectively.

Features

  • add new draft version and update 2025_03_26 (#66) (bc233ea)

v0.3.0

04 Apr 23:28
fdf66b4
Compare
Choose a tag to compare

0.3.0 (2025-04-04)

⚠ BREAKING CHANGES

  • add support for schema version 2025-03-26 (#62)

Features

  • add support for schema version 2025-03-26 (#62) (10aca90)
  • set default schema version to 2024_11_05 (#64) (c72d252)

v0.2.2

30 Mar 12:45
5b8ac5e
Compare
Choose a tag to compare

0.2.2 (2025-03-30)

Bug Fixes

  • update readme, announce rust-mcp-sdk (#59) (c5c6808)

v0.2.1

24 Mar 10:06
c24e8b2
Compare
Choose a tag to compare

0.2.1 (2025-03-23)

Bug Fixes

  • soft depricate CustomResult variants to suppress warnings (#57) (069b7a4)

v0.2.0

22 Mar 16:07
137a22e
Compare
Choose a tag to compare

0.2.0 (2025-03-22)

This update is classified as a breaking change due to the removal of certain deprecated methods and the standardization of method parameter order of generated constructors ( new(...) methods ) , ensuring that required arguments are placed before optional ones.

⚠ BREAKING CHANGES

  • Method parameter order of generated constructors ( new(...) methods ) has been standardized, with required arguments now consistently positioned before optional ones.
  • Deprecated get_method() methods have been eliminated.
  • improve generated schema, eliminate deprecated methods (#53)

Features

  • add associated methods to structs for static values (#56) (f5a97a3)
  • improve generated schema, eliminate deprecated methods (#53) (604de64)

v0.1.11

18 Mar 22:18
8daad86
Compare
Choose a tag to compare

0.1.11 (2025-03-18)

Features

  • add new utility functions for CallToolResultContentItem (#46) (1fe212c)
  • add tool_name() method to CallToolRequest (#52) (2489d90)
  • implement default trait for eligible types (#51) (92022da)

Bug Fixes

  • updated release action to keep the readme version updated (#49) (e8b03cf)

v0.1.10

09 Mar 23:11
bf51963
Compare
Choose a tag to compare

0.1.10 (2025-03-08)

Bug Fixes

  • custom result deserialization conflic with rust_mcp_schema::Result (#44) (f141060)

v0.1.9

02 Mar 22:12
c2408c1
Compare
Choose a tag to compare

0.1.9 (2025-03-02)

Features

  • introduce CallToolError (#39) (7b8672d)

  • new cunstructor and conversion utilities for call tool operations (#41) (0b8f622)

    Details Usage example:
    • Return a Unknown Tool Error
     async fn handle_call_tool_request(
            &self,
            request: CallToolRequest,
        ) -> Result<CallToolResult, CallToolError> {
    
           ////............
    
           return Err(CallToolError::unknown_tool(tool_name)),
    
    }
    • Return a CallToolResult with TextContent :
    async fn handle_call_tool_request(
            &self,
            request: CallToolRequest,
        ) -> Result<CallToolResult, CallToolError> {
    
           ////............
    
           return Ok(CallToolResult::text_content(
                        format!( "Successfully created directory {}", path),
                        None,
                    ));
    
    }

Bug Fixes

  • add missing MCPMessage trait for MessageFromClient (#43) (48dc8af)

v0.1.8

23 Feb 00:03
12b86f3
Compare
Choose a tag to compare

0.1.8 (2025-02-23)

Features

  • add SdkError codes and types (#37) (034ee8f)
  • add utility function for easy detection of initialized notifications (#38) (39400b6)
  • add utility functions for simplified type conversions (#33) (7447800)
  • more type conversion utilities (#36) (9a0abb9)
  • new TryFrom implementation for all standard mcp message variants (#35) (08854f0)

v0.1.7

21 Feb 10:53
8de4f4d
Compare
Choose a tag to compare

0.1.7 (2025-02-21)

Features

  • add message_type to MCPMessage trait (#26) (aca2336)

  • implement ToMessage trait (#31) (435f18b)

    Details

    ToMessage Trait simplifies the construction of MCP messages, reducing the amount of code required:

    Example:

    Before Introducing the ToMessage trait

    async fn send_ping_request(ping_request: rust_mcp_schema::PingRequest) {
        let request_id = get_next_id();
    
        // construct a ServerMessage from the ping_request , with request_id
        let message = ServerMessage::Request(ServerJsonrpcRequest::new(
            request_id,
            RequestFromServer::ServerRequest(ServerRequest::PingRequest(ping_request)),
        ));
    
        // serialize message into a valid rpcJsonrpcMessage string
        let rpc_message_json_str = message.to_string();
    
        // send the ping request to the client
        tranport.send(rpc_message_json_str).await
    }

    After Introducing the ToMessage trait

    async fn send_ping_request(ping_request: rust_mcp_schema::PingRequest) {
         let request_id = get_next_id();
    
        // construct a ServerMessage from the ping_request , with request_id
        let message: ServerMessage = ping_request
            .to_message(request_id)
            .unwrap();
        
        // serialize message into a valid rpcJsonrpcMessage string
        let rpc_message_json_str = message.to_string();
    
        // send the ping request to the client
        tranport.send(rpc_message_json_str).await
    }
  • introduce FromMessage trait (#30) (cc46100)