CliSubprocessCore.Tool (CliSubprocessCore v0.2.0)

Copy Markdown View Source

Neutral, serializable tool data used by the common CLI runtime.

These structs describe tool contracts and tool exchange data. They do not execute tools, store callbacks, dispatch MCP requests, or render provider configuration. Provider SDKs own provider-native tool registration and rendering.

Summary

Types

json_scalar()

@type json_scalar() :: nil | boolean() | number() | String.t()

json_value()

@type json_value() ::
  json_scalar() | [json_value()] | %{optional(String.t()) => json_value()}

validation_error()

@type validation_error() :: %{path: [String.t()], reason: atom(), type: atom()}