How does a model call tools?
Answer out loud or in your head first, then compare.
Answer
With a tool executed in our application, the model proposes a function name and arguments. The application checks them, performs the allowed operation and passes the result back. The model can then answer or ask for the next step. It's not the model directly gaining unlimited access to the system.
For example, it proposes getDocument({id: '12'}). The backend still has to check who's asking and whether they may read document 12. A correct name and argument types aren't enough. I reject unknown tools and attach results to the right call. Tools executed on the provider's side have a different boundary of responsibility, which you need to check in its API.
Why it matters: The foundation of implementing an agent loop.
Possible follow-ups: Can the model grant itself a permission through a tool argument?
How did it go? Be honest — “Not yet” puts the question on your review list.
Start with
- F-P01 · What is an LLM? — LLM fundamentals and AI engineering
- F-P03 · What are a token and a context window? — LLM fundamentals and AI engineering
Practise in code
- A minimal agent loop — runs tests in your browser
Further reading
- Claude Platform: Tool use overview(opens in a new tab)Docs; accessed 22.10.2026. Client and server tools, the call, and a result matched by call ID.