Beamscope.MCP.Tool behaviour (Beamscope v0.1.2)

Copy Markdown View Source

Behaviour for an MCP tool: a name, description, JSON Schema for its input, and a call function. Deliberately plain — no macro DSL, no schema-validation library — since Beamscope.MCP.Protocol does the only validation actually needed (required-key presence) itself.

Summary

Callbacks

call(params)

@callback call(params :: map()) :: {:ok, map()} | {:error, String.t()}

description()

@callback description() :: String.t()

input_schema()

@callback input_schema() :: map()

name()

@callback name() :: String.t()