Tools & capabilities
Agents can use multiple tools to answer your users. Here's how:
🪄 Tools enable you to enhance an agent with various capabilities, allowing it to efficiently tackle complex scenarios by simultaneously carrying out multiple tasks.
With Multi-tool agents:
- If you choose to build an agent with 0 tools: The agent uses only the model to generate an answer.
- If you build an agent with several tools: The agent evaluates the user request and deploy an appropriate combination of tools, selecting from none to several, with up to eight steps of processing.
- If you upload files: The agent evaluates the user request and, based on the files types, deploy an appropriate combination of dynamic tools, selecting from none to several, with up to eight steps of processing (see Conversation Files).

What tools can you choose from?
Data Source Tools
Data sources are managed by Builders and Admins of the workspace via Connections, Folders and Websites. Data Source tools allow the agent to retrieve and use selected data as context to answer questions, using the different methods below:
How to configure it when building an agent | What the agent will do | |
---|---|---|
Search | Select data from your Folders and Connections and describe what it is about. | Perform a semantic search across the selected data to find the most relevant content and generate a response using this context. |
Include Data | Select data from your Folders and Connections, set a time limit if required, and describe what it is about. | Include as much data as possible - starting with the most recent - until reaching the context window limit or your set limit, and then generate a response using this context. |
Extract Data | Select data from your Folders or Connections and define the desired data schema | Search the selected data and extract information following the defined schema. Learn more: Extract data |
Query tables | Select a database from your Folders or Connections, created from data warehouses (Snowflake/BigQuery) or CSV files, gsheets, or Notion databases. | Convert the user’s question into an SQL query, run it against the database, retrieve results, and generate a response from this content. Learn more: Table queries |
Capabilities
New tool that does not require any Data Source to run:
How to configure it when building an agent | What the agent will do | |
---|---|---|
Web search & Browse | No configuration required; simply enable this capability. | Perform web searches to gather information and use it to generate responses. |
Data visualization | No configuration required; simply enable this capability. | Become able to build graphs using the data it gathered. |
Reasoning | No configuration required; simply enable this capability. | Can decide to trigger a reasoning model for complex tasks (Note: most tasks won't require this level of reasoning and this could slow down your agent) |
Advanced Tools
Dust Apps are completely custom applications you can build to enhance your agents in a limitless way.
How to configure it when building an agent | What the agent will do | |
---|---|---|
Run a Dust App | See Introduction to Dust Apps. | Execute the chosen Dust app using the provided context to generate an answer. |
Define the tools and let the agent decide which are relevant to your specific request.
Tips & tricks to maximize tools’ performance
Here are the things you can check as you go through the agent building flow, from Instructions
to Tools & Data sources
:
Instructions screen
➡️ Clear and detailed instructions will ensure that your agent selects the appropriate tools for each situation.
Consider describing potential scenarios your agent might encounter and specifying which action should be used in each case, even when it feels obvious.
If you’ve enabled the Github connections and want to allow your agent to access the code:
If someone asks you a question that requires understanding our internal codebase, you must search our internal codebase before answering.
If you’ve enabled some Data sources tools and Websearch:
If someone asks you about information related to the company (i.e., information that is not public knowledge that you already know about, or that is available on the public internet), you must retrieve it from the internal data sources. If someone asks you about general/public knowledge that might require information that is more recent than your knowledge cutoff date, it is very important that you execute a Google search first.
If you’ve enabled the Browse action:
You may use your 'Browse' action to read the actual content of web pages to gain more information. It is usually a good idea to read content from several relevant pages before attempting to reply. You should browse several pages simultaneously.
Use instructions to “script” your agent. It is crucial not to overestimate the model's intuitive understanding; instead, treat it as if it were a highly informed yet naive child who requires detailed and clear explanations. 😄
Tools & Data sources screen

➡️ Choose data sources judiciously for each action to ensure high-quality, relevant results, and provide a thorough description of the data you selected.
The agent will provide better results if you carefully select the exact data it might need vs a large amount of data.
For example if you’re working on a customer service related agent, you can add a “Search” action and select the Customer Service documentation from your Notion Connection, and describe the data as is:
”This is the customer service documentation. Every thing here is the ground truth and this documentation is kept up to date. If you found some information here to answer a request, you can answer with confidence.”
And then add another “Search” action and select your Intercom connection to give it access to some specific categories of conversations, and say:
”This contains the closed Intercom conversations with your members. Keep in mind that especially if the conversation is old our process might have changed, and it concerns only a single member. The data in the Intercom notes are usually relevant, it’s usually that the customer service person asked help from a more experience colleague.”
➡️ Using Dust apps as tools? Make sure it holds a clear name and description so the agent knows how to use it.
If you plan on using a Dust app in an action, we highly recommend carefully setting its name and description so it’s not a complete black box for your agent. You can do so via the Settings
of your Dust app. The agent won’t know when and why to use it if it does not understand its purpose.
Also note that if the Dust app has no description at all, it won’t be selectable from the Agent Builder.
The more context you provide your agent regarding its prompt and action descriptions, the smarter it will operate! Easily iterate on your agent's configuration by testing it from the agent builder’s right panel modal.
What Use Cases Can Tools Unlock?
Below a couple of examples of agents using multiple tools to execute complex tasks. They can all be found directly in Dust’s Templates Library, that you can use to kickstart a new agent.
Examples of agents using multiple tools
@salesOutboundDraft
an agent able to dig through internal documentation and browse the web for the latest news to help draft the perfect outreach email@postmortemDraft
an agent that can parse through incident threads, extract key information and present it in a predefined incident summary template
Examples of Dust Apps tools (Advanced tools)
Dust Apps allows you to execute code that can be run by agents, which allows you to create custom tools for your agents.
Please refer to our Developer Platform overview if you want to learn more about Dust Apps.
Updated about 12 hours ago