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

# Tools

> Give your agent the ability to take actions during a call — book appointments, transfer calls, run calculations, and more.

Tools let your agent do things during a conversation, not just talk. When a caller asks to book a slot, get a calculation, or be transferred, the agent calls the right tool automatically and continues the conversation with the result.

Tools are created in **Workspace → Tools** and attached to nodes in the agent builder.

***

## Built-in Tools

These tools are available by default and ready to use without any setup.

**Appointment**
Books an appointment by collecting the caller's name, preferred date, and time. The agent confirms the details with the caller before completing the booking. This is a built-in tool — you can also add extra fields to collect any additional information your use case needs.

**Check Availability**
Checks whether a requested date and time slot is available before committing to it. This tool is not limited to appointments — use it with any use case where you need to verify a slot before booking or confirming. Always run this before the Appointment tool (or any custom booking tool) so the agent never double-books. This is a built-in tool — you can add extra fields if needed.

**Calculator**
Performs arithmetic calculations during the call. Supports `+`, `-`, `*`, `/`, `**`, `%`, and parentheses. Useful when the agent needs to compute EMIs, totals, discounts, or any other number on the fly.

**Transfer Call**
Transfers the caller to another phone number when requested. Configure the destination number in the tool settings.

***

## Creating a Custom Tool

Click **New Tool** to create a tool for your specific use case — for example, checking order status, registering a complaint, or scheduling a site visit.

**Name** *(required)*
What this tool does in a few words. The agent uses this name to decide when to call the tool.

Example: `Book Site Visit`, `Check Order Status`, `Register Complaint`

**Description**
A short explanation of what this tool does. Helps the agent understand the purpose and decide when to use it.

**Message Before Running** *(optional)*
A line the agent says while the tool is running. Fills the brief pause so the caller does not hear silence.

Example: `Give me a second, I'll check that for you.`

**Fields**
Define what information the agent should collect from the caller before running the tool. Each field has:

* **Label** — the name of the field (e.g. `customer_name`, `preferred_date`)
* **Description** — tells the agent what to ask for or listen for
* **Type** — Text, Number, Yes/No, Date, or Time
* **Required** — whether the agent must collect this before running the tool

The agent collects all required fields from the caller through the conversation before executing the tool.

***

## Attaching Tools to Nodes

Once created, attach tools to the **Start Call** node or any **Agent Node** in the agent builder. The agent can only use tools that are attached to the current node — tools attached to other nodes are not available at that step.
