---
title: "Tools"
url: "/skills-and-tools/tools"
description: "Functions an agent can call to look things up and take actions, including custom webhook tools you define without code."
productArea: skills-and-tools
audience: ["business-user", "developer"]
tags: ["tools"]
lastReviewed: 2026-08-25
---

# Tools (/skills-and-tools/tools)





A tool is a function the agent can call during a conversation to fetch data or take an action.
Unlike a [skill](/skills-and-tools), which only adds instructions, a tool actually runs and
returns a result the agent then uses in its answer.

## Using tools [#using-tools]

* **Browse** — select **Developer → Extensions** in the sidebar to see your own custom
  tools, or browse and install built-in ones from the [Marketplace](/marketplace).
* **Attach** — open an agent's **Tools** tab and enable the ones it may call.
* **Test** — use the **Test** button on a tool's detail view before attaching it.

An agent can only call tools you have explicitly enabled for it. This is enforced by the
runtime, not just by instructions.

## Built-in tools [#built-in-tools]

KlicForge ships a large catalog of built-in tools, grouped by area. Broadly they cover:

| Area        | What the tools do                                                                   |
| ----------- | ----------------------------------------------------------------------------------- |
| Data tables | Read, create, update, search and import records in your [data tables](/data-tables) |
| Knowledge   | Search and manage [knowledge sources](/knowledge)                                   |
| Contacts    | Look up and update [contact](/contacts) records                                     |
| Email       | Search, read, draft and send mail through a connected Gmail account                 |
| WhatsApp    | Send templates and manage WhatsApp messaging                                        |
| Scheduling  | Create and manage [scheduled tasks](/scheduled-tasks)                               |
| Assets      | Store, retrieve and send files and images                                           |
| Handoff     | [Escalate a conversation to a human](/channels)                                     |
| Date & time | Resolve dates such as "the second Tuesday of next month" or "in 10 business days"   |
| Utilities   | Calculation, web search, weather, image generation                                  |

Built-in tools are read-only in the dashboard. Which ones are available depends on your plan and
on which integrations you have connected.

## Custom webhook tools [#custom-webhook-tools]

You can turn any external HTTP API into an agent tool without writing code.

1. Select **Extensions → New Tool**.
2. Fill in the tool ID, name, description, HTTP method and endpoint URL.
3. Define path parameters, query parameters, body fields and auth headers.
4. Select **Test Tool** to send a live request and confirm it works.
5. Save. The tool is immediately available to attach to any agent.

You can also paste a `curl` command and let the importer populate the form.

<Callout type="warn">
  The **description** is what the agent reads to decide when to call the tool. Write it as
  instructions to the agent — "Look up an order by its order number" — not as an API summary. A
  vague description is the most common cause of a tool being called at the wrong moment.
</Callout>

### Supported methods and input mapping [#supported-methods-and-input-mapping]

`GET`, `POST`, `PUT`, `PATCH`, `DELETE`.

| Input type       | How it maps                                      |
| ---------------- | ------------------------------------------------ |
| Path parameters  | Substituted into the URL template: `{paramName}` |
| Query parameters | Appended to the URL as `?key=value`              |
| JSON body        | Sent as an `application/json` request body       |
| Auth headers     | Sent as HTTP headers, stored encrypted           |

## How a tool call works [#how-a-tool-call-works]

1. The agent decides to call a tool and supplies arguments.
2. KlicForge checks the tool is enabled for that agent.
3. Arguments are validated against the tool's input schema.
4. The tool runs.
5. Output is sanitised before it re-enters the agent's context.
6. The agent continues its answer with the result available.

Tool calls do not consume extra allowance — a turn is
[one interaction](/reference/interaction-counting) no matter how many tools it calls.

## Security [#security]

* Auth headers and credentials are stored encrypted and never returned in any API response.
* An agent can only call tools on its own enabled list.
* Tool output is treated as data — instruction-like patterns are stripped before it reaches the
  model, so a compromised endpoint cannot issue commands to your agent.

## Related pages [#related-pages]

* [Skills](/skills-and-tools)
* [Marketplace](/marketplace)
* [Data tables](/data-tables)
* [Guardrails](/guardrails)
