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

# Herramientas del agente

> Habilita funciones nativas de telefonía y conecta el agente a tus APIs con herramientas HTTP.

Las **herramientas** son las acciones que el agente puede ejecutar durante la llamada, más allá de hablar. Se dividen en dos grupos: las **nativas**, que son funciones de telefonía ya integradas, y las **HTTP**, que tú defines para que el agente consuma tus propias APIs.

Están en la pestaña **Herramientas** del editor del agente.

<Frame caption="Pestaña Herramientas con las funciones nativas y las herramientas HTTP">
  <img src="https://mintcdn.com/jelouai/AQag8di7NYjLixU_/assets/images/voice/agente-herramientas.png?fit=max&auto=format&n=AQag8di7NYjLixU_&q=85&s=8226cb9995fd13279dc89c575c574517" alt="Lista de herramientas nativas con sus interruptores y, debajo, la sección de herramientas HTTP con una herramienta configurada" width="1446" height="941" data-path="assets/images/voice/agente-herramientas.png" />
</Frame>

## Herramientas nativas

Son funciones integradas que el agente puede usar durante la conversación. Cada una es un interruptor independiente, y la esquina de la sección indica cuántas tienes activas.

| Herramienta                   | Qué permite                                               |
| ----------------------------- | --------------------------------------------------------- |
| **Finalizar llamada**         | Que el agente cuelgue cuando la conversación termine.     |
| **Detección de idioma**       | Cambiar automáticamente al idioma del interlocutor.       |
| **Saltar turno**              | Que el agente espere y deje que el interlocutor continúe. |
| **Detección de buzón de voz** | Detectar cuándo la llamada cae en un buzón.               |
| **Marcado DTMF**              | Que el agente emita tonos de teclado para navegar menús.  |
| **Transferir a otro agente**  | Escalar la llamada a otro agente de voz.                  |
| **Transferir a un número**    | Redirigir la llamada a un número externo.                 |

<Note>
  **Finalizar llamada** tiene además una opción **Configurar** junto a su interruptor, para ajustar su comportamiento con más detalle.
</Note>

### Cuándo activar cada una

**Finalizar llamada** es la que casi siempre querrás encendida: sin ella el agente no tiene forma de cerrar y la llamada queda abierta hasta el límite de duración máxima.

**Detección de buzón de voz** es la que más créditos ahorra en campañas salientes. Sin ella, una llamada que cae en un buzón se convierte en el agente hablándole a una grabadora hasta agotar el tiempo.

**Saltar turno** ayuda cuando la persona habla despacio o hace pausas largas para pensar; sin ella el agente tiende a interrumpir o a rellenar el silencio.

**Marcado DTMF** solo tiene sentido si el agente va a atravesar un menú telefónico automático, por ejemplo al transferir a una central que pide extensión.

**Detección de idioma** conviene solo si de verdad esperas interlocutores en varios idiomas. Si tu operación es monolingüe, dejarla apagada evita que el agente cambie de idioma por un malentendido de la transcripción.

<Warning>
  **Transferir a otro agente** y **Transferir a un número** son las dos que sacan la llamada del agente actual. Antes de activarlas define en el prompt del sistema cuándo debe usarlas: si no, el agente puede transferir demasiado pronto y perder casos que sí podía resolver.
</Warning>

## Herramientas HTTP

Permiten al agente **consumir APIs externas durante la conversación**: consultar un saldo, validar un documento, registrar un pedido o disparar un cobro sin salir de la llamada.

La sección lista las que ya tienes, mostrando el método, el nombre, la URL y la descripción, con acciones para editarlas o eliminarlas. Se crean con **+ Agregar herramienta**.

<Frame caption="Panel de configuración de una herramienta HTTP">
  <img src="https://mintcdn.com/jelouai/AQag8di7NYjLixU_/assets/images/voice/agente-herramienta-http.png?fit=max&auto=format&n=AQag8di7NYjLixU_&q=85&s=f646a48413995ce044fcb253a0608a9b" alt="Panel lateral con el nombre de la herramienta, la descripción para el modelo, el método y la URL del endpoint, la sección de autenticación, los headers adicionales y los parámetros del body" width="1839" height="1060" data-path="assets/images/voice/agente-herramienta-http.png" />
</Frame>

### Los campos

<Steps>
  <Step title="Nombre de la herramienta">
    El identificador interno **en snake\_case** que el modelo usará para invocar la herramienta. No es un texto que el usuario escuche; es el nombre con el que el agente la llama.
  </Step>

  <Step title="Descripción para el modelo">
    Explica **cuándo** debe usarse la herramienta. Este texto es lo único que el modelo tiene para decidir si la invoca o no, así que conviene decir explícitamente en qué situación aplica y qué datos necesita.
  </Step>

  <Step title="Método y URL del endpoint">
    El verbo HTTP y la dirección a la que Jelou hará la petición.
  </Step>

  <Step title="Autenticación">
    Reutiliza una conexión guardada en ElevenLabs o crea una nueva con **Crear autenticación**. Las credenciales nunca se muestran una vez guardadas.
  </Step>

  <Step title="Headers adicionales">
    Cabeceras extra que se envían con cada petición, si tu API las necesita.
  </Step>

  <Step title="Parámetros del body">
    Se envían como JSON en el cuerpo de la petición.
  </Step>

  <Step title="Descripción del cuerpo">
    Campo obligatorio. Describe **en detalle cómo extraer los datos de la transcripción** para armar el cuerpo de la petición.
  </Step>
</Steps>

<Tip>
  La calidad de una herramienta HTTP depende casi por completo de dos textos: la **descripción para el modelo** y la **descripción del cuerpo**. Si el agente no invoca la herramienta cuando debería, el problema suele estar en la primera; si la invoca con datos incompletos o mal formados, en la segunda.
</Tip>

<Warning>
  El agente extrae los parámetros de lo que **entendió** de la conversación, y una transcripción de voz puede confundir dígitos o nombres propios. En operaciones sensibles como pagos o cambios de datos, haz que el agente repita el dato en voz alta y pida confirmación antes de invocar la herramienta, y valida en tu backend antes de ejecutar.
</Warning>

## Siguiente paso

<CardGroup cols={2}>
  <Card title="Knowledge base" icon="book" href="/guides/voice/knowledge-base">
    Para preguntas frecuentes, un documento suele resolver mejor que una llamada a tu API.
  </Card>

  <Card title="Análisis" icon="chart-line" href="/guides/voice/analysis">
    Define qué quieres evaluar y extraer de cada conversación.
  </Card>
</CardGroup>
