Skip to main content
Enable Agno agents to interact with a physical web browser on the host machine. Unlike “headless” search tools (like Tavily) or scraping tools (like Firecrawl), this toolkit is primarily used to open and visualize content for the user.

from agno.agent import Agent
from agno.models.google import Gemini
from agno.tools.webbrowser import WebBrowserTools
from agno.tools.websearch import WebSearchTools

# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------


# Example 1: Enable specific WebBrowser functions
agent = Agent(
    model=Gemini("gemini-flash-latest"),
    tools=[WebBrowserTools(enable_open_page=True), WebSearchTools()],
    instructions=[
        "Find related websites and pages using DuckDuckGo",
        "Use web browser to open the site",
    ],
    markdown=True,
)

# Example 2: Enable all WebBrowser functions
agent_all = Agent(
    model=Gemini("gemini-flash-latest"),
    tools=[WebBrowserTools(all=True), WebSearchTools()],
    instructions=[
        "Find related websites and pages using DuckDuckGo",
        "Use web browser to open the site with full functionality",
    ],
    markdown=True,
)

# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
    agent.print_response(
        "Find an article explaining MCP and open it in the web browser."
    )

Run the Example

# Clone and setup repo
git clone https://github.com/agno-agi/agno.git
cd agno/cookbook/91_tools

# Create and activate virtual environment
./scripts/demo_setup.sh
source .venvs/demo/bin/activate

python webbrowser_tools.py
For details, see Web browser tool cookbook.