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

# register • AI Agent SDK

> register: Register a tool with the registry.

# register

Method

> This is a method of the [**ToolRegistry**](https://praison.ai/docs/sdk/reference/praisonaiagents/classes/ToolRegistry.md) class in the [**registry**](https://praison.ai/docs/sdk/reference/praisonaiagents/modules/registry.md) module.

Register a tool with the registry.

Thread-safe: Uses lock for concurrent access in multi-agent scenarios.

## Signature

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
def register(tool: Union[BaseTool, Callable], name: Optional[str], overwrite: bool, trust_level: Optional[str], dynamic_schema_overrides: Optional[Callable[[Dict[str, Any]], Dict[str, Any]]]) -> None
```

## Parameters

**tool** `Union[BaseTool, Callable]` *required*

BaseTool instance or callable function

**name** `Optional[str]`

Override name (default: tool.name or function.**name**)

**overwrite** `bool` (default: False)

If True, overwrite existing tool with same name

**trust\_level** `Optional[str]`

Trust level for the tool ("trusted" or "external")

**dynamic\_schema\_overrides** `Optional`

Optional function to dynamically modify tool schema. Called with base schema dict, returns modified schema dict.

### Exceptions

> [accordion] ValueError
>
> If tool with same name exists and overwrite=False

## Uses

* `ToolTrustLevel`
* `ValueError`
* `callable`
* `TypeError`
* `logging.debug`
* `ToolEntry`

## Used By

* [`HookRegistry.register_function`](../functions/HookRegistry-register_function)
* [`HookRegistry.register_command`](../functions/HookRegistry-register_command)
* [`register_middleware`](../functions/register_middleware)
* [`register_runtime`](../functions/register_runtime)
* [`tool`](../functions/tool)

## Source

> [card] [View on GitHub](https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/tools/registry.py#L122)
>
> `praisonaiagents/tools/registry.py` at line 122


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