Agent with Tools

Investment analyst agent with financial tools served over the AG-UI protocol

Code

agent_with_tools.py
from agno.agent.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.os import AgentOS
from agno.os.interfaces.agui import AGUI
from agno.tools.yfinance import YFinanceTools

agent = Agent(
    model=OpenAIResponses(id="gpt-5.5"),
    tools=[
        YFinanceTools(
            enable_stock_price=True,
            enable_analyst_recommendations=True,
            enable_stock_fundamentals=True
        )
    ],
    description="You are an investment analyst that researches stock prices, analyst recommendations, and stock fundamentals.",
    instructions="Format your response using markdown and use tables to display data where possible.",
)

agent_os = AgentOS(
    agents=[agent],
    interfaces=[AGUI(agent=agent)],
)
app = agent_os.get_app()

if __name__ == "__main__":
    agent_os.serve(app="agent_with_tools:app", reload=True)

Usage

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate

Set Environment Variables

export OPENAI_API_KEY=your_openai_api_key

Install dependencies

uv pip install -U "agno[os,agui]" openai yfinance

Run Example

python agent_with_tools.py

Key Features

  • Financial Data Tools: Real-time stock prices, analyst recommendations, fundamentals
  • Investment Analysis: Comprehensive company analysis and recommendations
  • Data Visualization: Tables and formatted financial information
  • AG-UI Endpoint: Connect the agent to an AG-UI-compatible frontend