BetaToolParam Class — anthropic-sdk-python Architecture
Architecture documentation for the BetaToolParam class in beta_tool_param.py from the anthropic-sdk-python codebase.
Entity Profile
Dependency Diagram
graph TD 5a13152e_0981_77d1_5c74_bd524e253e1e["BetaToolParam"] 1c4c78da_6003_b8a4_8245_9d84dfac5927["beta_tool_param.py"] 5a13152e_0981_77d1_5c74_bd524e253e1e -->|defined in| 1c4c78da_6003_b8a4_8245_9d84dfac5927
Relationship Graph
Source Code
src/anthropic/types/beta/beta_tool_param.py lines 30–79
class BetaToolParam(TypedDict, total=False):
input_schema: Required[InputSchema]
"""[JSON schema](https://json-schema.org/draft/2020-12) for this tool's input.
This defines the shape of the `input` that your tool accepts and that the model
will produce.
"""
name: Required[str]
"""Name of the tool.
This is how the tool will be called by the model and in `tool_use` blocks.
"""
allowed_callers: List[Literal["direct", "code_execution_20250825"]]
cache_control: Optional[BetaCacheControlEphemeralParam]
"""Create a cache control breakpoint at this content block."""
defer_loading: bool
"""If true, tool will not be included in initial system prompt.
Only loaded when returned via tool_reference from tool search.
"""
description: str
"""Description of what this tool does.
Tool descriptions should be as detailed as possible. The more information that
the model has about what the tool is and how to use it, the better it will
perform. You can use natural language descriptions to reinforce important
aspects of the tool input JSON schema.
"""
eager_input_streaming: Optional[bool]
"""Enable eager input streaming for this tool.
When true, tool input parameters will be streamed incrementally as they are
generated, and types will be inferred on-the-fly rather than buffering the full
JSON output. When false, streaming is disabled for this tool even if the
fine-grained-tool-streaming beta is active. When null (default), uses the
default behavior based on beta headers.
"""
input_examples: Iterable[Dict[str, object]]
strict: bool
"""When true, guarantees schema validation on tool names and inputs"""
type: Optional[Literal["custom"]]
Domain
Defined In
Source
Frequently Asked Questions
What is the BetaToolParam class?
BetaToolParam is a class in the anthropic-sdk-python codebase, defined in src/anthropic/types/beta/beta_tool_param.py.
Where is BetaToolParam defined?
BetaToolParam is defined in src/anthropic/types/beta/beta_tool_param.py at line 30.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free