# Tool Calling

Frame Agents use a sophisticated tool calling system to transform natural language conversations into real blockchain operations. When you ask your agent to "check my ETH balance" or "swap 100 USDC for ETH," the agent automatically selects and executes the appropriate tools from its toolkit. These tools include wallet management functions, DEX integrations, market data APIs, gas fee estimators, transaction executors, and blockchain data retrievers. The agent interprets your request, determines which tools are needed, and calls them in the correct sequence to accomplish your goal.

The tool calling process happens seamlessly in the background without requiring users to understand technical implementation details. For example, when you request a token swap, your agent might use the KyberSwap quote tool to get the best exchange rate, the gas fee estimator to calculate transaction costs, and then the transaction execution tool to complete the swap. Each tool specializes in specific blockchain operations and APIs, allowing the agent to provide accurate, real-time information and execute complex multi-step operations that would normally require navigating multiple platforms and interfaces.

This tool-based architecture is what enables Frame Agents to move beyond simple chatbot responses and actually perform meaningful blockchain operations on your behalf. Rather than just providing information about DeFi protocols, your agent can interact with them directly. Instead of only discussing market trends, it can execute trades based on your instructions. The tool calling system essentially gives your AI assistant hands and eyes in the blockchain world, transforming conversational requests into tangible actions while maintaining the security and control of your private keys and wallet access.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.framebot.dev/using-frame/making-an-agent/tool-calling.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
