Typed MCP tool contract exposed to bounded agent runs.
Summary
Types
A JSON Schema object. The catalog supplies it; the server advertises it in tools/list and
enforces it on tools/call. Defaults to an open object, which accepts anything -- a tool
that wants a contract states one.
Types
@type input_schema() :: map()
A JSON Schema object. The catalog supplies it; the server advertises it in tools/list and
enforces it on tools/call. Defaults to an open object, which accepts anything -- a tool
that wants a contract states one.
@type t() :: %BeamMCP.ToolSpec{ command_class: atom(), description: String.t(), input_schema: input_schema(), mode: :read_only | :proposal, name: atom() }