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

# Tools

> Extend your voice agent's capabilities by giving it tools to perform actions during live conversations.

Tools let your AI agent take actions during a conversation – transfer calls, hand the caller to another agent, end calls, call external APIs, or invoke remote MCP servers – based on the context of the conversation and your prompt instructions.

When a tool is attached to a workflow node, the LLM decides **when** to invoke it and **what parameters** to pass, based on the user's spoken intent and your node-level instructions.

## Tool Types

Bananaflow provides two categories of tools:

### Built-in Tools

Pre-configured tools that handle common telephony operations out of the box:

* [**Call Transfer**](/voice-agent/tools/call-transfer) – Transfer the active call to a phone number or SIP endpoint
* [**Transfer to Agent**](/voice-agent/tools/transfer-agent) – Hand the live call to another Bananaflow agent, carrying a handover note with it
* [**End Call**](/voice-agent/tools/end-call) – Terminate the call when the conversation is complete

### Custom Tools

Tools you define to integrate with any external system:

* [**HTTP API**](/voice-agent/tools/http-api) – Call any REST API endpoint during a conversation (e.g., CRM updates, data lookups, triggering automations)
* [**MCP Tool**](/voice-agent/tools/mcp-tool) – Connect an external MCP server and expose its remote tools to the LLM during a conversation

## How Tools Work

1. You **define** a tool with a name, description, and parameters
2. You **attach** the tool to one or more workflow nodes
3. During a call, the LLM reads your node prompt, the tool description, and the caller's intent to decide whether to invoke the tool
4. The tool executes and returns a result that the agent can use to continue the conversation

## Best Practices

* **Attach only relevant tools to each node** – fewer tools means more reliable invocations
* **Write clear tool descriptions** – the LLM uses these to decide when to call the tool
* **Guide the LLM in your node prompt** – explicitly describe when a tool should be used
* **Test tool behavior** – verify your agent invokes tools at the right moments using web or phone calls


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.