---
title: "List available tools"
method: GET
path: "/api/tools/catalog"
tags: ["tools", "tools"]
---

# List available tools

`GET /api/tools/catalog`

## Request

- Base URL: `https://api.dialogbrain.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.dialogbrain.com/api/tools/catalog`
- Auth: none declared

List all available tools based on the specified mode and filters.

Returns a catalog of tools that can be executed in the current context.

When ``background=true`` is set, each tool in the response gains three
extra fields used by the per-agent Tools override UI:
  - ``default_visible``: whether the tool is in the default set for the
    given agent's connected channels (``agent_id``) or, if no agent is
    specified, assuming all channels connected.
  - ``required_channel``: the channel literal the tool requires, or null.
  - ``schema_bytes``: cached byte cost of the tool's OpenAI function
    schema — the UI multiplies this by the caller's selection to estimate
    per-agent token cost.

## Query parameters

- `mode` 'draft' | 'auto' | 'supervised' | 'autonomous' | 'background_draft' | 'post_approval' | 'sandbox' | 'voice': Execution modes for the AI agent.
- `include_approval_required` boolean
- `category` string, nullable
- `search` string, nullable
- `planner_only` boolean
- `background` boolean
- `include_hidden` boolean
- `agent_id` integer, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/dialogbrain/apis/dialogbrain-v2-api-gateway.md) · [All operations](https://skmtc.dev/dialogbrain/apis/dialogbrain-v2-api-gateway/llms.txt) · [OpenAPI document](https://skmtc.dev/dialogbrain/apis/dialogbrain-v2-api-gateway/revisions/77bef09a9209?raw)
