---
title: "Update Tool Config"
method: PUT
path: "/api/user/tools"
---

# Update Tool Config

`PUT /api/user/tools`

Update tool configuration for the user.

Only factories that are not ``dashboard_always_enabled`` can be
toggled at the factory level. Attempts to disable always-enabled
tools are silently ignored.

Each entry may include a ``sub_tools`` list with explicit
``permission_level`` values to override individual sub-tools. Levels
are persisted to ``user_permissions``; ``"never"`` filters the
sub-tool out of the LLM schema on the next turn.

## Request body

- ToolConfigUpdate
  - `tools` ToolConfigUpdateEntry[], required
    - `name` string, required
    - `enabled` boolean, required
    - `sub_tools` SubToolPermissionUpdate[], nullable
      - `name` string, required
      - `permission_level` string, required

## Response `200`

Successful Response

- ToolConfigResponse
  - `tools` ToolConfigEntryResponse[], required
    - `name` string, required
    - `description` string, required
    - `category` string, required
    - `domain_group` string
    - `domain_group_order` integer
    - `enabled` boolean, required
    - `configured` boolean
    - `auth_message` string
    - `oauth_name` string
    - `always_enabled` boolean
    - `connect_form` string
    - `sub_tools` SubToolEntryResponse[]
      - `name` string, required
      - `description` string, required
      - `permission_level` string
      - `hidden_in_permissions` boolean

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/mozilla-ai/apis/clawbolt.md) · [All operations](https://skmtc.net/mozilla-ai/apis/clawbolt/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mozilla-ai/clawbolt/versions/327e305858ac/schema)
