KeenableTools gives Agno agents Keenable web search and page reading. It ships in Agno itself, so there is nothing extra to install, and it runs without an API key.
→ KeenableTools in the Agno repository
Install
KeenableTools ships in Agno 3.1.5 and later.
The examples use Agno’s default OpenAI model, so set OPENAI_API_KEY, or pass any other model to Agent(model=...).
Give it to an agent
KeenableTools() registers web_search. Each result comes back with its title, URL and the first 500 characters of the page text, as markdown, or as JSON with format="json".
Search and read pages
all=True adds fetch_url_content, which returns a page’s main content as markdown under its title. Private and internal addresses are refused. Async variants are registered under the same names, so agent.arun() and agent.aprint_response() work unchanged.
Options
Without a key, calls run on the shared public tier at lower rate limits. Set
KEENABLE_API_KEY, or pass KeenableTools(api_key=...), to use your organization’s limits and remove the hourly cap.