Sign in

    colmugx/mcp/protocol does not have a README file

    ClientCapabilities

    Client Capabilities — declared during initialization

    CompleteRequestParams

    CompletionArgument

    CompletionContext

    CompletionReference

    CompletionResult

    Complete wire result, including open completion fields and result metadata.

    ContentMetadata

    CreateMessageRequest

    CreateMessageRequest — server asks client to sample an LLM

    CreateMessageResult

    CreateMessageResult — client's response to a sampling request

    DiscoverResult

    Full discovery result, including cache hints and server identity metadata.

    ElicitationAction

    ElicitationCapabilities

    Elicitation Capabilities — client supports user interaction requests

    ElicitationRequest

    ElicitationRequest — server asks client to interact with the user

    ElicitationResult

    ElicitationResult — client's response to an elicitation request

    ElicitationValue

    GetPromptResult

    MCPError

    MCP protocol-level errors These follow the JSON-RPC 2.0 error code conventions.

    Error code allocation (per 2026-07-28 spec):
    • -32700, -32600..-32603: standard JSON-RPC 2.0
    • -32000..-32019: legacy/implementation-defined (no new allocations)
    • -32020..-32099: reserved for the MCP specification

    ModelPreferences

    ParamDef

    Parameter definition for tool schema

    ProgressNotification

    ProgressNotification — params for notifications/progress

    ProgressToken

    Opaque progress identifier. Numeric tokens are not coerced to strings or integers.

    PromptCapabilities

    PromptDefinition

    ResourceCapabilities

    ResourceContents

    ResourceDefinition

    ResourceLinkData

    ResourceReadResult

    ResourceTemplateDefinition

    ResultMetadata

    Shared result fields retain wire presence; extensions are top-level fields.

    RootCapabilities

    Root Capabilities — client can provide filesystem roots

    SamplingCapabilities

    Sampling Capabilities — client supports LLM sampling requests

    SamplingContent

    Retains single-block versus array presence on the wire, even for a one-element array.

    SamplingContentBlock

    Sampling has a narrower standard union than tool-result content, plus tool-use blocks.

    SamplingContext

    SamplingMessage

    SamplingMessage — a message within a sampling/createMessage request

    ServerCapabilities

    Tool

    Core Tool trait following MCP protocol

    ToolAnnotations

    Advisory hints, not an authorization or safety policy.

    ToolCapabilities

    ToolResultContent

    TransportError

    Transport-level errors These occur at the communication layer (network, IO, etc.)

    get_number

    fn get_number(json : Json, key : String) -> Result[Double,
    ToolResult
    ]

    Extract number from JSON, returning error ToolResult on failure

    get_optional_number

    fn get_optional_number(json : Json, key : String) -> Result[Double?,
    ToolResult
    ]

    Extract optional number from JSON

    get_optional_string

    fn get_optional_string(json : Json, key : String) -> Result[String?,
    ToolResult
    ]

    Extract optional string from JSON

    get_string

    fn get_string(json : Json, key : String) -> Result[String,
    ToolResult
    ]

    Extract string from JSON, returning error ToolResult on failure

    Source Files