L'uso degli strumenti consente a Claude di chiamare funzioni che definisci tu o che fornisce Anthropic. Claude decide quando chiamare uno strumento in base alla richiesta dell'utente e alla descrizione dello strumento, quindi restituisce una chiamata strutturata che la tua applicazione esegue (strumenti client) o che Anthropic esegue (strumenti server).
Ecco l'esempio più semplice che utilizza uno strumento server, dove Anthropic gestisce l'esecuzione:
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
tools=[{"type": "web_search_20260209", "name": "web_search"}],
messages=[{"role": "user", "content": "What's the latest on the Mars rover?"}],
)
print(response.content)Gli strumenti si differenziano principalmente per il luogo in cui viene eseguito il codice. Gli strumenti client (inclusi gli strumenti definiti dall'utente e gli strumenti con schema Anthropic come bash e text_editor) vengono eseguiti nella tua applicazione: Claude risponde con stop_reason: "tool_use" e uno o più blocchi tool_use, il tuo codice esegue l'operazione e tu invii un tool_result. Gli strumenti server (web_search, code_execution, web_fetch, tool_search) vengono eseguiti sull'infrastruttura di Anthropic: vedi i risultati direttamente senza gestire l'esecuzione.
Per il modello concettuale completo, incluso il ciclo agentico e quando scegliere ciascun approccio, consulta Come funziona l'uso degli strumenti.
Per connetterti ai server MCP, consulta il connettore MCP. Per creare il tuo client MCP, consulta modelcontextprotocol.io.
Garantisci la conformità allo schema con l'uso rigoroso degli strumenti
Aggiungi strict: true alle definizioni dei tuoi strumenti per garantire che le chiamate agli strumenti di Claude corrispondano sempre esattamente al tuo schema. Consulta Uso rigoroso degli strumenti.
L'accesso agli strumenti è una delle primitive a più alto impatto che puoi fornire a un agente. Su benchmark come LAB-Bench FigQA (interpretazione di figure scientifiche) e SWE-bench (ingegneria del software nel mondo reale), l'aggiunta anche solo di strumenti di base produce guadagni di capacità sproporzionati, spesso superando le baseline degli esperti umani.
Con il tool_choice predefinito di {"type": "auto"}, Claude decide a ogni turno se chiamare uno strumento o rispondere direttamente. Chiama uno strumento quando la richiesta corrisponde alla capacità descritta di quello strumento e la risposta non è già nel contesto; risponde direttamente per conoscenze stabili, attività creative e turni conversazionali.
Questo confine è orientabile tramite il tuo prompt di sistema. Se Claude non chiama gli strumenti quando te lo aspetti, un'istruzione leggera come "Use the tools to investigate before responding." aumenta in modo misurabile l'uso degli strumenti; una forma più forte come "Always call a tool first before responding." spinge ulteriormente. Al contrario, "Use your judgment about whether to call a tool or respond directly." mantiene conservativo il comportamento di attivazione.
Per una garanzia rigida piuttosto che un suggerimento, usa tool_choice.
La pagina di ciascuno strumento server descrive più in dettaglio il proprio confine di attivazione. Vedi ad esempio lo strumento di ricerca web o lo strumento di esecuzione del codice.
Per una guida pratica completa, consulta il tutorial. Per esempi di riferimento di singoli concetti, consulta Definire gli strumenti e Gestire le chiamate agli strumenti.
Le richieste di uso degli strumenti vengono tariffate in base a:
tools)Gli strumenti lato client hanno lo stesso prezzo di qualsiasi altra richiesta all'API di Claude, mentre gli strumenti lato server possono comportare costi aggiuntivi in base al loro utilizzo specifico.
I token aggiuntivi derivanti dall'uso degli strumenti provengono da:
tools nelle richieste API (nomi, descrizioni e schemi degli strumenti)tool_use nelle richieste e risposte APItool_result nelle richieste APIQuando utilizzi tools, l'API include automaticamente anche uno speciale prompt di sistema per il modello che abilita l'uso degli strumenti. Il numero di token per l'uso degli strumenti richiesti per ciascun modello è elencato di seguito (esclusi i token aggiuntivi elencati sopra). Nota che la tabella presuppone che venga fornito almeno 1 strumento. Se non vengono forniti tools, una scelta dello strumento impostata su none utilizza 0 token aggiuntivi del prompt di sistema.
| Modello | Scelta dello strumento | Conteggio token del prompt di sistema per l'uso degli strumenti |
|---|---|---|
| Claude Opus 4.8 | auto, noneany, tool | 290 token 410 token |
| Claude Opus 4.7 | auto, noneany, tool | 675 token 804 token |
| Claude Opus 4.6 | auto, noneany, |
Questi conteggi di token vengono aggiunti ai normali token di input e output per calcolare il costo totale di una richiesta.
Consulta la tabella panoramica dei modelli per i prezzi attuali per modello.
Quando invii un prompt con uso degli strumenti, proprio come qualsiasi altra richiesta API, la risposta restituirà sia il conteggio dei token di input che di output come parte delle metriche usage riportate.
Dove vengono eseguiti gli strumenti, come funziona il ciclo e quando usare gli strumenti.
Il tutorial: da una singola chiamata a uno strumento fino alla produzione.
Directory degli strumenti forniti da Anthropic e relative proprietà.
Was this page helpful?
tool| 497 token 589 token |
| Claude Opus 4.5 | auto, noneany, tool | 496 token 588 token |
| Claude Opus 4.1 (deprecato) | auto, noneany, tool | 313 token 315 token |
| Claude Opus 4 (deprecato) | auto, noneany, tool | 313 token 315 token |
| Claude Sonnet 4.6 | auto, noneany, tool | 497 token 589 token |
| Claude Sonnet 4.5 | auto, noneany, tool | 496 token 588 token |
| Claude Sonnet 4 (deprecato) | auto, noneany, tool | 313 token 315 token |
| Claude Haiku 4.5 | auto, noneany, tool | 496 token 588 token |
| Claude Haiku 3.5 (ritirato, eccetto su Bedrock e Vertex AI) | auto, noneany, tool | 264 token 355 token |