> For the complete documentation index, see [llms.txt](https://docs.zaia.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zaia.app/tools/tools-overview.md).

# Tools: Overview

## Understanding Tools and When to Use Them

In Zaia Endless, **Tools** are what extend an Agent’s capabilities beyond its core **Role + Prompt**.

By default, an Agent can only respond using the instructions defined in its Prompt.\
Whenever you want an Agent to **interact with data, trigger actions, integrate with systems, or escalate to humans**, you must create and configure the appropriate Tools.

***

### How the Agent Uses Tools

Agents decide to use a Tool based on the **Tool description**.

* If the Agent determines a Tool is needed but required inputs are missing, it will **ask the user for the missing information first**
* Once all required properties are available, the Agent executes the Tool
* If all logic and information fit inside the Prompt, **no Tool is required**

> 💡 **Best practice:** Tools should only be created when they are truly necessary. Fewer Tools lead to more predictable behavior.

***

### Types of Tools in Zaia Endless

Below are the Tools currently available in the platform and when to use each one.

***

#### 📡 HTTP Request

Allows the Agent to perform API calls to external services.

**Supported methods:**\
GET, POST, PUT, DELETE, PATCH

**Use when:**

* Integrating with third-party systems
* Fetching or sending data to external APIs

***

#### ⚙️ Code Execution

Allows the Agent to execute custom code snippets.

**Use when:**

* Performing calculations
* Transforming data
* Applying custom logic not covered by other Tools

***

#### 🌐 Web Search

Allows the Agent to search the web for up-to-date information.

**Use when:**

* Information is not available in Knowledge Bases
* Real-time or external context is required

***

#### 🎫 Ticket Creation

Creates a ticket and transfers the conversation to a human in the Endless CRM.

**Important:**

* Requires a **CRM Team** to exist
* This is the **only native way** to escalate a conversation to humans

***

#### 🏷️ Chat Tagging

Allows the Agent to classify chats with a **preapproved set of tags** after it replies.

**Use when:**

* Categorizing conversations without creating a ticket
* Keeping **Chat History** and **Tickets** filterable by topic or intent
* Preserving manual tags outside the Tool scope

***

#### ✉️ Message Sending

Allows the Agent to send messages to **specific phone numbers** based on a defined condition.

**Use when:**

* Sending notifications
* Triggering outbound messages
* Automating alerts or confirmations

***

#### ⏰ Follow Up

Allows the Agent to send **follow-up messages after conversation inactivity**.

**Use when:**

* Re-engaging users
* Reminding users to complete an action
* Continuing conversations automatically

***

#### 📚 Knowledge Base Search

Allows the Agent to search within a Knowledge Base created in Zaia Endless.

**Use when:**

* Information is too large or dynamic for the Prompt
* You need structured, searchable documentation or FAQs

***

#### 📄 PDF Reader

Allows the Agent to read and extract information from PDF files.

Allows the Agent to read and reason over the **entire content of a PDF as a single contextual document**, without chunking or semantic fragmentation.

***

#### 📊 Table Tools

Tables are native databases inside Zaia Endless.\
Each type of interaction requires its own Tool.

Available Table Tools:

* **Table Row Insertion** — insert new records
* **Table Row Update** — update existing records
* **Table Row Semantic Search** — search by meaning using natural language
* **Table Row Similarity Search** — search by vector similarity (closest matches)

**Use when:**

* Managing leads, customers, tickets, or structured data
* Persisting information across conversations

> ⚠️ Tables must be created before configuring their Tools.

***

#### 🔄 Workflow Execution

Executes a pre-built Workflow.

**Use when:**

* Orchestrating multi-step processes
* Automating business logic (e.g., payments, onboarding, approvals)

***

#### 🧠 Contextual Memory

Allows the Agent to store and retrieve information across conversations.

**Examples:**

* Name
* Company
* Budget
* Preferences

Memory works like **dynamic variables**, and the Agent relies on the Tool description to understand what should be extracted and stored.

***

### Best Practices

* **Keep it simple** — If information fits in the Prompt, don’t create a Tool
* **Respect dependencies** — Create the resource first (Table, Workflow, CRM Team)
* **Write clear descriptions** — Always explain Tools in natural language
* **Test internally** — Use the Internal Chat to validate Tool behavior before publishing

***

### Key Takeaway

Tools are what make Agents **active** inside Zaia Endless.

They connect your Agent to:

* Knowledge Bases
* Tables
* Workflows
* External APIs
* Humans

But remember:\
**More Tools = more complexity.**\
Start simple and only add what your Agent truly needs.
