BeamMCP.ToolSpec (BeamMCP v0.2.0)

Copy Markdown View Source

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.

t()

Types

input_schema()

@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.

t()

@type t() :: %BeamMCP.ToolSpec{
  command_class: atom(),
  description: String.t(),
  input_schema: input_schema(),
  mode: :read_only | :proposal,
  name: atom()
}