# Tool call trace > The assistant did something in the world, and the viewer only sees the sentence describing it afterwards. - Canonical: https://patterns.konigi.com/ai-assistants/tool-call-trace - Group: Grounding and disclosure - Level: implementation - Status: published - Updated: September 12, 2026 - Also called: function call, action log, ran a search --- ## Problem The answer says it checked the calendar and the room is free. Something did happen between the question and the answer, and the viewer has no way to see what was queried, what came back, or whether the sentence is a report or an invention. ## Solution Render each call as a compact row: the tool's name in plain language, the significant arguments, the outcome, and the time it took. Collapsed by default, expandable to the actual request and response. The collapsed line is what most viewers read; the expansion is for the case where the answer is surprising and someone needs to find out why. The distinction that matters more than any styling choice is between reads and writes. A search, a lookup, a file read changes nothing and can run freely with a trace shown afterwards. A call that sends a message, files a ticket, moves money or edits a document changes the world, and once it's run no interface can undo it. HAX guideline 16 is explicit that consequences belong before the action rather than after it, so writes want an approval step showing exactly what's about to happen, with the arguments visible and editable. That approval gate is where most products under-invest. Approving "send email" tells the viewer nothing. Approving a call that shows the recipient, the subject and the body is a decision someone can actually make. The general rule is that the gate should display the payload—not the intent. Failures need to be as visible as successes. A tool that timed out, returned nothing, or hit a permission wall usually leaves the model to write around the gap, and the resulting answer is confident and unsupported. A failed row in the trace is the only signal the viewer gets that the sentence they're reading was assembled without the data it claims. Arguments deserve care for a second reason: they're the clearest statement of what the assistant understood. A search whose query reads nothing like the question is a misunderstanding caught in the act, and it's often catchable before the answer finishes. ## Use when The assistant can act, retrieve, or reach systems the viewer can't see from the conversation. ## Don't use when The model is answering from its own parameters. A trace panel that's always empty teaches people to stop opening it, which costs exactly when a call finally does happen. ## Trade-offs Full traces are the most honest option and read as debug output in a consumer product, so the collapsed summary has to carry real information rather than a spinner and a verb. Approval gates on writes prevent the failures that matter and add friction to every action, which pushes people toward blanket approvals that defeat the gate. Raw arguments and responses can contain credentials, personal data, or internal identifiers that shouldn't be on screen. A long chain of calls produces a trace longer than the answer, which then needs collapsing of its own. ## Checklist - Is the tool's name written in language a viewer understands? - Are reads and writes visually distinguished? - Does a write require approval, and does the approval show the payload? - Are failed and empty calls as visible as successful ones? - Can the viewer see the arguments, and do they reveal what was understood? - Is anything sensitive in the arguments or responses redacted? - Does the trace collapse when there are twenty calls? - Is the elapsed time per call shown? - Can the viewer stop a chain of calls partway? - Does the answer say when it proceeded despite a failed call? ## Compare **Perplexity** shows its search steps as the primary disclosure, putting the verifiable part of its process on screen instead of the unverifiable reasoning. **ChatGPT** surfaces tool activity as collapsed status lines within the turn, keeping the transcript readable while the work is legible. **Claude** streams tool calls as first-class content blocks alongside text, so a call is part of the response rather than metadata attached to it. **Microsoft Copilot** in a tenant has the sharpest version of the write problem, since a call that edits a shared document affects colleagues who never saw the approval. ## Related Reasoning disclosure is the same fold applied to thinking rather than acting. Source list is what a retrieval call produces. Citation chip binds an individual claim to what a call returned. Scoped context determines which tools are available at all. Generation error covers the case where a failed call ends the turn instead of being written around. ## Related patterns - [Reasoning disclosure](https://patterns.konigi.com/ai-assistants/reasoning-disclosure) — The model worked for thirty seconds and the viewer wants to know whether it understood the question. - [Source list](https://patterns.konigi.com/ai-assistants/source-list) — The answer drew on eight pages, and the viewer needs to judge those pages before trusting it. - [Citation chip](https://patterns.konigi.com/ai-assistants/citation-chip) — A well-sourced paragraph and a fabricated one read identically until the viewer can see where each claim came from. - [Scoped context](https://patterns.konigi.com/ai-assistants/scoped-context) — The assistant sits inside a product full of data and the viewer cannot tell how much of it is in scope. - [Generation error](https://patterns.konigi.com/ai-assistants/generation-error) — The stream died halfway and left a half-written paragraph on the screen. ## Sources - [Anthropic, Tool use overview](https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/overview) - [Microsoft HAX Toolkit, Guideline 16, Convey the consequences of user actions](https://www.microsoft.com/en-us/haxtoolkit/guideline/convey-the-consequences-of-user-actions/) - [Microsoft HAX Toolkit, Guideline 11, Make clear why the system did what it did](https://www.microsoft.com/en-us/haxtoolkit/guideline/make-clear-why-the-system-did-what-it-did/) --- Screenshots on patterns.konigi.com are reproduced for commentary and criticism. Product names and marks belong to their owners.