> ## Documentation Index
> Fetch the complete documentation index at: https://graph.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# search_tools

> Finds the catalog tools that fit a task, most likely first.

## How it works

* With a decision model configured, the model chooses among every tool, and its probabilities rank them.
* Without one, keywords rank them.
* Tools below `min_probability` are dropped, so the list can be empty.

`compose_plan` and the drafter agents use this plan to find tools.

## Input

**query** `string` *required*

The task the tools are for, as one step

**min\_probability** `number` (default: 0.1)

Minimum probability for a tool to be returned

**limit** `integer` (default: 10)

Most tools to return

**model** `string` (default: decider)

The decision model role that chooses

**chunk\_size** `integer` (default: 250)

Most tools per choice question, up to 255; larger catalogs are split, then every tool reaching min\_probability meets the others in a final choice

**schemas** `boolean` (default: true)

Include each tool's input schema and output shape

## Output

**mode** `string`

How tools were ranked, `decision` (a decision model chose) or `keyword` (keyword match).

**tools** `object[]`

The tools that fit, most likely first, with their scores and, when `schemas` is on, their input schemas and output shapes.

**always** `string[]`

Tools that are always offered, from `[tools].always_loaded`. They're never ranked.

## Steps

| Step | Calls |
| - | - |
| `catalog` | `builtin__catalog_tools` |
| `picked` | `builtin__score_candidates` |
| `described` | `builtin__describe_tools` |

```yaml Plan step theme={null}
- id: E1
  tool_name: plan__search_tools
  input:
    query: "{{input.query}}"
```

```bash Customize theme={null}
graph plan show search_tools > .graph/plans/search_tools.yaml
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.