AI Learning Hub › Learn AI › Self-Paced Courses › Agents Without the Hype › Give It Tools
Module 4 ยท Beginner
Give It Tools
Tools are how a system reaches past its own text: reading a file, running a search, sending a message. Which ones belong in the toolbox depends on the job.
By the end
- Explain what a tool adds to an agent
- Distinguish information already in context from a capability the agent can invoke
- Recognize the input a tool needs and the result it returns
- Choose a focused toolset for a defined job
- Explain why more available tools are not automatically better
- Recognize that making a tool available does not require the agent to use it
Knowing is not the same as doing
Four modules, four questions:
- Module 1 — Who decides what happens next?
- Module 2 — What job and limits has the human defined?
- Module 3 — What information is available for those decisions?
- Module 4 — What capabilities can the agent use while pursuing the job?
In Module 3 we gave the agent information. Suppose its context already contains the faculty member’s request, product documentation, privacy information, and current access information. The model can reason about all of it.
But if important current information is missing, it cannot obtain that information merely by wanting it. A tool gives the system a capability it can invoke. Context is information available for the decision. A tool is something the system can use to get information or cause something to happen.
A tool is an available capability, not a required step
A system does not need a tool merely because a tool exists.
If the necessary information is already available and the requested outcome is simply a response, the agent may not need to invoke anything at all.
Three more words to learn
Tool
A capability the agent can invoke to retrieve information or interact with something outside the model’s current response.
Tool input
The information supplied when the tool is invoked.
Tool result
The information returned after the tool runs, which can inform what happens next.
Same job. Different toolbox.
The job has not changed since Module 2, and the context needs have not changed since Module 3. Only the available capabilities move.
The assignment, still unchanged
Prepare a one-page background briefing for a faculty member who is considering whether to explore a new AI research platform.
And the same boundaries: no account creation, no uploading Stanford materials, no contacting the company, and no changes outside the research session.
The three toolsets below are descriptions of fictional capabilities. Nothing here is executable, and nothing was run.
Toolset A — No research tools
Available
None. The agent can use only the context already provided.
What happens if the supplied material does not answer an important question?
Reveal the discussion
The system cannot simply obtain the missing evidence. Wanting it is not a mechanism.
Under the Module 2 job, it should use the stop condition: identify the gap rather than invent the answer. Missing capability is different from missing context — but either one can prevent the job from being completed.
Worth separating those two, because they look identical from the outside. A briefing that says “this could not be determined” might mean nobody supplied the document, or it might mean nobody gave the agent a way to go and find it. Those call for different fixes.
Toolset B — Every available capability
Available
search_official_sources- Search the platform provider’s official public materials.
search_web- Search the public web.
open_source- Retrieve the contents and source information for a selected page.
search_shared_files- Search files the signed-in user can access.
create_account- Create an account with the platform provider.
send_email- Send an email to a supplied recipient.
save_file- Save content to a selected file location.
delete_file- Delete a selected file.
The agent has more options. Is that automatically better?
Reveal the discussion
No — and for two separate reasons, which are worth keeping apart.
Unnecessary choices
Several of these do not help with the defined job at all. Creating an account, sending an email, and deleting a file contribute nothing to writing a background briefing, and the Module 2 boundaries explicitly put some of them outside the job.
The agent is now carrying capabilities whose only possible role in this task is to be correctly declined.
Ambiguous choices
Even the genuinely research-related tools overlap. Given search_official_sources, search_web, and search_shared_files, the model has to work out which is appropriate for each question — and the names alone will not always settle it. More capability also creates more decisions about capability.
Every additional tool is one more thing to understand, compare, and rule out, on every step where a tool might be useful.
The problem is not a magic number. Toolsets become harder to use when capabilities are irrelevant, poorly described, or overlap in ways that make the appropriate choice unclear. Both Anthropic and OpenAI do mention sheer volume as a factor, but both put more weight on clarity and overlap — OpenAI notes that some systems handle more than fifteen well-defined, distinct tools while others struggle with fewer than ten overlapping ones. There is no count to aim for.
Toolset C — Selected for the job
Available
search_official_sources- Search the platform provider’s official public materials using a query.
open_source- Open one selected source and return its title, date when available, URL, and relevant contents.
That is all.
The assignment requires a briefing based on primary sources. These two let the agent locate additional permitted evidence, inspect the sources it selects, and carry what it finds into its next decision. It does not need account creation, messaging, deletion, or file-upload capabilities to accomplish this job. The toolset is smaller because the job is narrower — not because fewer tools are automatically better.
Three different parts of the system
Job — Module 2
What are we trying to accomplish, and what limits apply?
Context — Module 3
What information is available while a decision is being made?
Tools — Module 4
What capabilities can the system invoke if it needs to obtain information or interact with its environment?
A clear job, good context, and appropriate tools solve different problems.
None of the three substitutes for another. That is why the last three modules could not be one module.
A tool needs something to work with
One tool, one call, in full:
- Tool
search_official_sources- Description
- Searches official public materials from the platform provider.
- Input
query = "document uploads privacy"- Result
- Three official sources found, with titles, dates, and source identifiers.
Notice what did not happen. The model has not magically gained permanent knowledge of those sources. It requested a capability, supplied an input, and received a result.
And that result is the interesting part, because of where it goes:
- the model notices that document-upload behavior is unclear;
- it chooses
search_official_sources; - it supplies a query;
- the tool returns three candidate sources; and
- that result is now available when the model decides what to do next.
A tool result can become new context for the next decision.
That is the connection back to Module 3, where we noted that context does not stay frozen. Here is one of the ways it changes. What that pattern looks like when it repeats is the subject of the next module.
The agent has to understand the toolbox
For a model to decide whether a tool is useful, it has to be able to tell what the tool does. Depending on the system, it may see the tool’s name, its description, the input it expects, and other information about the capability. Exactly what is shown differs by product.
The practical idea survives all of that variation: a tool needs to be understandable enough for the model to decide when it is useful. Anthropic’s guidance suggests describing a tool the way you would describe it to a new colleague — making explicit the things you would otherwise assume.
Unclear
search
“Searches things.”
Clearer
search_official_sources
“Searches the platform provider’s official public materials using a query.”
Which one gives the model more useful information for deciding whether this tool fits the job? The second says what it searches, whose material it covers, and what it needs from you. The first says almost nothing that would help anyone choose it over an alternative.
Overlap makes this worse. Imagine the agent has three tools named search, find, and lookup, each described as roughly “Find information.” The system has three tools but very little information for choosing among them.
This is what both Anthropic and OpenAI point at when they say each tool should have a clear, distinct purpose, and that tools which overlap in function or have a vague purpose make selection harder.
Available does not mean required
Giving the agent search_official_sources does not mean run this tool every time.
If the supplied context already answers the relevant question, invoking another search may be unnecessary — it costs time, adds material to sift, and may return nothing the agent did not already have. In an agentic system, the model may decide whether a permitted tool is useful for the current state of the job. The toolbox defines possibilities. The job and current context help determine which possibility makes sense.
This is Module 1’s question again, at a smaller scale. Somebody decides whether to reach for the tool. In a workflow, that was decided in advance. Here it may not be.
Some tools find. Some tools act.
Every tool in this module has been a way of finding something out. That is not the only kind. A tool might:
- retrieve information;
- search a collection;
- read a document;
- create or edit something;
- send a message; or
- trigger an action in another system.
Reading through that list, you can probably feel the second half getting heavier than the first.
Those differences become much more important when the tool can change something outside the model’s response. A search that returns nothing useful has wasted a step. A message sent to the wrong person has not.
We will return to that later.
A boundary does not require a tempting button
Module 2 established that a written boundary is an instruction rather than a barrier. Toolsets give you a second, different lever.
If the job says do not create an account, and the agent does not need account creation to perform the job, it may be better not to provide create_account in the first place. Natural-language boundaries tell the model what not to do. Limiting the available capabilities can reduce the number of out-of-bounds choices it can make through those tools.
Be precise about what this does and does not achieve. Leaving a capability out of the agent’s toolset means the agent cannot take that action through that toolset. It does not mean the surrounding software environment is incapable of the action, and it is not a guarantee about the whole system. We are talking about the agent’s defined toolbox here, not about everything the host can do.
Build the toolbox
Your turn, with a different job:
The job
Help me prepare a short comparison of a new classroom technology
using current public information.
Do not create accounts, upload course materials, contact vendors,
or alter my files.
Eight capabilities are available:
- Search official product documentation
- Open a selected public source
- Search the entire public web
- Search files in my shared drive
- Create a vendor account
- Send an email
- Save a draft as a file
- Delete a file
Sort each one before reading on. As in Module 3, two of these are genuinely arguable.
Three categories
- Give it
- The job may reasonably require this.
- Maybe
- It depends on something the job has not settled.
- Leave out
- This job does not need it.
One possible toolset
Give it
- 1. Search official product documentation. Directly supports current primary-source research.
- 2. Open a selected public source. Lets the system inspect evidence it has chosen to investigate.
Maybe — depends on the job
- 3. Search the entire public web. Could help find independent information, but it may be unnecessary if the assignment is restricted to primary sources.
- 7. Save a draft as a file. Useful only if the desired deliverable is actually a file rather than a response in the current environment.
Leave out
- 4. Search files in my shared drive. The assignment uses public information and does not require private or shared files.
- 5. Create a vendor account. Explicitly outside the boundary.
- 6. Send an email. Explicitly outside the boundary and unnecessary to the research task.
- 8. Delete a file. Does not serve the stated job.
Items 3 and 7 are the arguable ones, and they stay arguable. Giving it the whole web is reasonable if independent sources are within the assignment; withholding it is reasonable if they are not. Saving a draft is reasonable if a file is the deliverable, and pointless if it is not. The job as written does not settle either question, which is the point — the toolset follows from the job, so an unsettled job leaves the toolset unsettled too.
“Leave out” means unnecessary for this job — not inherently bad or unsafe in every other task. send_email is exactly the right tool for a job that involves sending email.
Capability should earn its place
A tool belongs in the agent’s toolbox because the job may reasonably require it — not because the software happens to offer it.
This is not a rule that fewer is better. Complex jobs may legitimately require many tools, and an agent starved of capability fails exactly as Toolset A did. What the engineering guidance actually warns about is narrower than minimalism: capabilities that are irrelevant to the task, unclear in what they do, overlapping with one another, or returning results that are not useful.
None of those four problems is solved by counting.
Already completed MCP Without the Mystery? MCP is one way an AI host can make tools and other capabilities available. That course focused on how a capability is exposed and supervised. This course is focusing on why an agent might select and sequence capabilities while pursuing a goal. Neither course requires the other.
The system now has something to choose
Four modules in, the division of labor is concrete.
The human has defined
- the job;
- important boundaries;
- useful starting context; and
- the available toolbox.
The agent may decide
- whether a tool is needed;
- which permitted tool fits the current problem;
- what input to supply; and
- what to do after seeing the result.
Now “who decides what happens next?” has something concrete to operate on.
What to notice
Context gives the agent information. Tools give it options.
- Too few useful capabilities — the agent may reach a problem it cannot investigate or act on.
- Too many irrelevant or overlapping capabilities — the agent gains additional decisions that may not help the job.
- Fit for the job — the system has understandable capabilities that support the choices the task may actually require.
Before you continue
You are ready for Module 5 if you can:
- explain the difference between context and a tool;
- identify a tool’s input and result;
- explain how a tool result can become new context;
- choose capabilities based on the job rather than availability alone;
- recognize overlapping or unclear tools;
- explain why an available tool need not be used; and
- explain why leaving an unnecessary capability out can support a job’s boundaries.