> ## Documentation Index
> Fetch the complete documentation index at: https://phidatainc-studio-tools-doc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Tool Result Caching

> Cache tool results to reduce repeated API calls and improve performance.

Tool result caching is designed to avoid unnecessary recomputation by storing the results of function calls on disk.
This is useful during development and testing to speed up the development process, avoid rate limiting, and reduce costs.

<Check>
  This is supported for all Agno Toolkits
</Check>

## On Toolkit

Pass `cache_results=True` to the Toolkit constructor to enable caching for that Toolkit.

```python cache_tool_calls.py theme={null}
import asyncio

from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.hackernews import HackerNewsTools
from agno.tools.yfinance import YFinanceTools

agent = Agent(
    model=OpenAIResponses(id="gpt-5.2"),
    tools=[HackerNewsTools(cache_results=True), YFinanceTools(cache_results=True)],
)

asyncio.run(
    agent.aprint_response(
        "What is the current stock price of AAPL and top stories on HackerNews?",
        markdown=True,
    )
)
```

## On @tool

Pass `cache_results=True` to the `@tool` decorator to enable caching for that tool.

```python cache_tool_calls.py theme={null}
from agno.tools import tool

@tool(cache_results=True)
def get_stock_price(ticker: str) -> str:
    """Get the current stock price of a given ticker"""

    # ... Long running operation

    return f"The current stock price of {ticker} is 100"
```
