---
url: >-
  https://adk.nht.io/api/@nhtio/adk/exceptions/variables/E_TOOL_ALREADY_REGISTERED.md
description: >-
  Thrown when {@link @nhtio/adk!ToolRegistry.register} is called for a tool name
  that is already registered and `overwrite` is not `true`.
---

# Variable: E\_TOOL\_ALREADY\_REGISTERED

```ts
const E_TOOL_ALREADY_REGISTERED: CreatedException<[]>;
```

Defined in: [lib/exceptions/runtime.ts:432](https://github.com/NHTIO/ADK/blob/v1.20260605.0/src/lib/exceptions/runtime.ts#L432)

Thrown when [@nhtio/adk!ToolRegistry.register](../../forge/classes/ToolRegistry.md#register) is called for a tool name that is already registered
and `overwrite` is not `true`.

## Remarks

Fatal — accidentally overwriting a registered tool indicates a programming error. Pass
`overwrite: true` to replace an existing tool intentionally.
