Tool
A function the model is allowed to call, like reading a file or running a command.
A tool is a function exposed to the model: a name, a description, and a parameter schema. The model does not run it. It emits a request to call it, and the harness executes the real function and sends back the result.
Two things follow from this. First, the model can only call tools it knows about: a tool that is not in the context does not exist as far as the model is concerned. Second, the description is the interface. A vague description gets used wrongly, and the fix is a better description, not a different model.
Tool design is interface design. How many tools there are, how they are named, and how narrowly they are scoped all affect how reliably the agent picks the right one.
Related terms
Tool Call
The model's request naming a tool and its arguments. Structured output, not a side effect.
Tool Result
What the harness sends back after running a tool: file contents, command output, an error.
MCP
A standard way to plug external tool servers into an agent harness.
Harness
Everything around the model that turns it into an agent: tools, system prompt, permissions, hooks.
Agent
A model with tools, a system prompt, and a loop that lets it act and observe results.
Want this working inside your team?
It starts with one conversation about your workflow.