Multi-tools Usage
Combine WebSearchTools and YFinanceTools in one agent to produce a streamed NVDA report from news and financials.
You can enable multiple AI tools and allow a single Agno agent to become a multi-functional problem solver. You can equip an agent with a variety of individual functions, specialized toolkits, or even entire external servers via the Model Context Protocol (MCP).
Prerequisites
- Install and set up individual AI tools. For example, to use YFinance tools, OpenAIChat and WebSearch, you need to install these packages.
uv pip install -U agno openai ddgs yfinance
Export your OpenAI API key: export OPENAI_API_KEY=your_openai_key.
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.websearch import WebSearchTools
from agno.tools.yfinance import YFinanceTools
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
agent = Agent(
model=OpenAIChat(id="gpt-4o"),
tools=[WebSearchTools(), YFinanceTools()],
instructions=["Use tables to display data"],
markdown=True,
)
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
agent.print_response(
"Write a thorough report on NVDA, get all financial information and latest news",
stream=True,
)YFinanceTools() exposes only the current-price tool by default. For the report requested here, replace it with YFinanceTools(enable_company_info=True, enable_stock_fundamentals=True, enable_income_statements=True, enable_key_financial_ratios=True). News search comes from WebSearchTools; results and financial fields depend on provider availability.
Run the Example
# Clone and setup repo
git clone https://github.com/agno-agi/agno.git
cd agno
git checkout d703c34f3abf3c41275d3fb2da6e0518a8881f24
# Create and activate virtual environment
./scripts/demo_setup.sh
source .venvs/demo/bin/activate
python cookbook/91_tools/multiple_tools.pyFor details, see Multiple tool cookbook.