---
title: "Unused built-in tools"
description: "antiburn flags sessions where a native tool definition sat in context the whole session and was never called."
url: "https://antiburn.ai/docs/findings/unused-built-in-tools/"
---
## What it detects

An agent's own built-in tools - not MCP, just the harness's native tool set - each add a definition to every request's context once the harness or model version includes them. antiburn resolves a session's harness version and model against its own built-in tool catalogue and checks whether every tool definition that showed up was ever invoked. One unused, real-cost definition anywhere in the session is a finding.

A few kinds of definition are excluded on purpose, so they can never cause a false finding: a situational tool that only enters the request when it's actually used (things like `Skill` or plan-mode tools), a deferred definition that never sent its full token cost, and a zero-token definition with nothing to reclaim.

## Why it burns tokens

A tool definition that's present in every request but never called is context you're paying for on every single turn without ever getting any use from it.

## How to fix it

If your agent lets you disable individual built-in tools or trim which ones load for a given project, turning off ones you never use removes their context cost entirely. Which tools are configurable, and how, depends on your agent - check its own settings for a tool or capability toggle.

## When it shows "not assessed"

This only assesses on agents that both expose a named catalogue of their built-in tool definitions and record whether each one was invoked - among antiburn's supported agents, that's Claude Code today. Other agents can't be assessed for this finding at all.

Even on a supported agent, a session can come back not assessed instead of clean or a finding in two distinct ways. If the session's harness version or model doesn't resolve against antiburn's built-in tool catalogue, antiburn has nothing to check invocation against, even though the agent in principle supports this signal. Separately, a session where antiburn's read of the invocation or context-loading records is incomplete never produces a clean result, since an absence claim needs complete evidence - a missed record could be the one call that used a tool antiburn otherwise saw as idle.

See [hygiene score and findings](/docs/concepts/hygiene-score-and-findings/) for how this fits into your overall score.
