Claude · Schema
Tool
Definition of a tool that the model can use.
Artificial IntelligenceChatbotConversational AIGenerative AILarge Language ModelsMachine LearningNatural Language Processing
Properties
| Name | Type | Description |
|---|---|---|
| name | string | The name of the tool. Must match the regex ^[a-zA-Z0-9_-]{1,64}$. |
| description | string | A detailed description of what the tool does, when it should be used, and what each parameter means. |
| input_schema | object | JSON Schema object defining the expected parameters for the tool. |
| cache_control | object | |
| type | string | The type of tool. Omit for custom tools. Use specific type strings for server tools like web_search_20260209, code_execution_20260120, text_editor_20250728, etc. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/Tool",
"title": "Tool",
"type": "object",
"description": "Definition of a tool that the model can use.",
"required": [
"name",
"input_schema"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the tool. Must match the regex ^[a-zA-Z0-9_-]{1,64}$.",
"pattern": "^[a-zA-Z0-9_-]{1,64}$",
"example": "get_stock_price"
},
"description": {
"type": "string",
"description": "A detailed description of what the tool does, when it should be used, and what each parameter means.",
"example": "A sample description."
},
"input_schema": {
"type": "object",
"description": "JSON Schema object defining the expected parameters for the tool.",
"properties": {
"type": {
"type": "string",
"const": "object"
},
"properties": {
"type": "object",
"additionalProperties": true
},
"required": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"type"
],
"example": "example_value"
},
"cache_control": {
"$ref": "#/components/schemas/CacheControl"
},
"type": {
"type": "string",
"description": "The type of tool. Omit for custom tools. Use specific type strings for server tools like web_search_20260209, code_execution_20260120, text_editor_20250728, etc.",
"example": "example_value"
}
}
}