Gesproken samenvatting — druk op afspelen om mee te lezen: de gesproken regel blijft bovenaan.
Je kunt je eigen aangepaste tools bouwen, maar sommige mogelijkheden zijn zo gebruikelijk dat Anthropic ze vooraf heeft gebouwd. Je schrijft de code niet. Je host de sandbox niet. Je declareert gewoon de tool, en Anthropic voert deze uit.
Server tools: declared by you, run by Anthropic
Anthropic biedt server tools die op hun infrastructuur draaien. Je voert deze niet uit — Anthropic doet dat. Dit betekent dat je geen agent loop nodig hebt voor deze aanroepen. Claude roept de tools zelf aan, en het resultaat komt terug in dezelfde response.
De belangrijkste zijn:
- Web search — zoekt op het internet en retourneert resultaten met citaten
- Code execution — schrijft en voert Python uit in een sandbox
- Web fetch — haalt volledige inhoud van URL's op
Two server tools in one file
Laten we enkele van de grote tools in één bestand bekijken: twee messages. create aanroepen, één met web search en één met code execution.
import anthropic
client = anthropic. Anthropic()
search_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 is Anthropic's latest model release? Answer in one sentence. "} ], )
for block in search_response. content: if block. type == "server_tool_use": print(f"Tool call: {block. name} — {block. input}") elif block. type == "text": print(block. text)
code_response = client. messages. create( model="claude-opus-4-8", max_tokens=1024, tools=[{"type": "code_execution_20260120", "name": "code_execution"}], messages=[ {"role": "user", "content": "Calculate the mean and standard deviation of [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]"} ], )
for block in code_response. content: if block. type == "server_tool_use": print(f"Tool call: {block. name} — {block. input}") elif block. type == "bash_code_execution_tool_result": print(f"stdout: {block. content. stdout}") elif block. type == "text": print(block. text)
Twee dingen om op te merken:
- **Er is geen agent loop hier. ** We schakelen niet op stop_reason. We duwen tool resultaten niet terug. Anthropic voert de tool server-side uit, en de response bevat al het resultaat.
- **De response heeft nieuwe block types. ** Een server_tool_use block voor de tool aanroep, een code execution tool result block voor de output, plus de reguliere text blocks.
Running it
Voor web search zie je Claude's tool aanroep afgedrukt, dan een zin antwoord over de nieuwste model release met de zoek citaten erin verwerkt.
Voor code execution zie je de werkelijke Python die Claude schreef, de stdout van de sandbox die deze uitvoert, en een definitief tekst antwoord.
We hoefden geen zoek crawler op te zetten. We voerden geen Python sandbox uit. We declareerden twee tools en kregen beide gratis.
The other category: client tools
Het is goed om te weten dat de andere categorie bestaat. Client tools draaien waar je code draait. Ze worden verzonden in de Claude SDK, dus je hoeft het schema niet zelf te definiëren. Twee voorbeelden:
- Memory — Claude leest en schrijft memory over sessies heen
- Bash — een persistente bash shell zodat Claude commando's kan uitvoeren
The Anthropic docs table of built-in tools, with memory and bash listed as client tools alongside server tools like web fetch and code execution
Ze hebben dezelfde vorm als een aangepaste tool, maar de SDK geeft je het schema en een verstandige runner.
Why this matters in production
In een productie-app is dit het kortste pad naar functies die anders weken zouden kosten. Web search kan een fact-check endpoint voeden die elke numerieke en regelgevingsuitspraak in een concept tegen het live web verifieert.
A proposal review app using web search to fact-check the regulatory and numeric claims in a draft proposal
Eén herinnering echter: alleen omdat iets op het internet is gevalideerd, betekent niet dat het waar is. Controleer Claude's werk altijd dubbel.
Recap
- Server tools — web search, code execution, web fetch — worden gedeclareerd in je tools array. Anthropic voert ze uit.
- Je krijgt het resultaat in dezelfde response, met geen agent loop vereist. Zoek naar server_tool_use en tool result blocks naast de reguliere text blocks.
- Client tools zoals memory en bash draaien waar je code draait, maar de SDK verzendt het schema en een runner voor je.
- Het "gehost door Anthropic" idee schaalt helemaal omhoog: managed agents passen het toe op de hele agent, niet alleen op één tool.