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

# LLM Tools

> Extract structured values from the live conversation using an LLM — a single typed value, or several flat fields in one call.

## What are LLM Tools?

LLM tools run structured extraction against the current step's conversation. The assistant reads what the caller has said and returns clean, typed data you can store in variables and route on.

There are two LLM tools:

| Tool                                | Use when you need                                                                                  |
| ----------------------------------- | -------------------------------------------------------------------------------------------------- |
| [LLM Data](/tools/llm/llm-data)     | **One** typed value — a name, email, number, date, appointment time, reference number, or category |
| [LLM Custom](/tools/llm/llm-custom) | **Several** flat fields from the same answer, extracted in one call                                |

***

## When extraction passes

All LLM extraction only passes when the caller is directly answering the assistant's current-step question, or affirming the assistant's immediately preceding confirmation question.

Counter-questions, subject changes, deflections, unrelated answers, and vague answers return `false`.

***

## Output

Both tools expose a single `result` boolean.

| Value   | Meaning                                                                                                     |
| ------- | ----------------------------------------------------------------------------------------------------------- |
| `true`  | A valid value was extracted, and any configured writes succeeded                                            |
| `false` | Required inputs were missing, schema validation failed, no conversation was available, or extraction failed |

Use the `result` boolean for tool-step conditions, and a destination/response map to store the extracted values.

***

## Choosing between them

* Need just one field? Use **LLM Data** — it offers typed extraction modes (text, number, date, date & time, enum).
* Need a small group of related fields, like contact or claim details? Use **LLM Custom** with a flat schema.

***

## Next Steps

* [LLM Data](/tools/llm/llm-data) — Extract a single typed value
* [LLM Custom](/tools/llm/llm-custom) — Extract several flat fields in one call
* [Tool Steps](/flows/steps-tool) — Learn how to configure tool steps
* [Variables](/flows/variables) — See all available variables
