colmugx/mcp/protocol/core does not have a README file

    Params

    pub(open) trait Params {
    fn schema() -> JsonSchema
    fn from_json(Json) -> Self raise ToolError
    fn to_json(Self) -> Json
    }

    impl Params for Bool
    impl Params for Int
    impl Params for Double
    impl Params for String
    impl Params for Option[T]
    impl Params for Array[T]

    ToolError

    pub suberror ToolError {
    ToolError(String)
    }

    JsonSchema

    pub struct JsonSchema {
    type_name : String
    description : String
    properties : Map[String, JsonSchema]?
    required : Array[String]?
    items : JsonSchema?
    default : Json?
    } derive(
    Debug
    )

    JsonSchema::to_json

    fn JsonSchema::to_json(self : JsonSchema) -> Json

    ParamKind

    pub(all) enum ParamKind {
    String
    Integer
    Number
    Boolean
    Array(ParamKind)
    Object(Map[String, ParamKind])
    }

    ToolWrapper

    pub(all) struct ToolWrapper {
    name_impl : () -> String
    description_impl : () -> String
    params_impl : () -> Array[
    ParamDef
    ]
    execute_impl : (Json) ->
    ToolResult

    }

    impl Tool for ToolWrapper

    arr_schema

    fn arr_schema(item : JsonSchema, desc? : String) -> JsonSchema

    bool_schema

    fn bool_schema(desc? : String) -> JsonSchema

    int_schema

    fn int_schema(desc? : String) -> JsonSchema

    num_schema

    fn num_schema(desc? : String) -> JsonSchema

    obj_schema

    fn obj_schema(props : Map[String, JsonSchema], required : Array[String], desc? : String) -> JsonSchema

    simple_tool

    fn simple_tool(name : String, description : String, handler : (Json) ->
    ToolResult
    ) -> ToolWrapper

    str_schema

    fn str_schema(desc? : String) -> JsonSchema

    tool_fn

    fn[Args : Params, Ret : ToToolResult] tool_fn(handler : (Args) -> Ret, name~ : String, description~ : String) -> ToolWrapper

    Powered by MoonBit

    Site sourceReport issuePackagesBuild queueSkillsStatistics

    © 2026 mooncakes.io