Stone.js API
    Preparing search index...

    The long form of a tool declaration.

    interface McpToolDeclaration {
        annotations?: Record<string, unknown>;
        description?: string;
        inputSchema?: JsonSchema;
        name?: string;
        outputSchema?: JsonSchema;
    }
    Index
    annotations?: Record<string, unknown>

    Hints an agent may use to decide how carefully to call this tool: readOnlyHint, destructiveHint, idempotentHint, openWorldHint, title.

    They are hints, never a guarantee, and never a substitute for the authorization on the route.

    description?: string

    What the tool does, in the words a model reads before deciding to call it.

    Derived from the route's openapi summary or description when it is not stated here. A tool with neither is still exposed, and says so in the log: an agent given a bare name will guess, and guessing against a route that writes something is the failure worth seeing early.

    inputSchema?: JsonSchema

    The arguments the tool takes, as JSON Schema.

    Derived from the route's validation schema when it is not stated here, and from the route's path parameters when there is no schema to read. State it to override both.

    name?: string

    The name an agent calls. Defaults to the route's name.

    outputSchema?: JsonSchema

    The shape of the result, as JSON Schema.

    When declared, a successful call also answers structuredContent, so an agent reads a value rather than parsing prose. Undeclared, the result travels as text only, which is what the protocol asks for when a shape was never promised.