Skip to main content
Pick a web-search backend (DuckDuckGo, Tavily, Serper) for your agent — or plug in your own.

Quick Start

1

Use a built-in provider

Give your agent web search with the default DuckDuckGo provider:
from praisonaiagents import Agent

agent = Agent(
    name="Researcher",
    instructions="Search the web and summarise findings.",
    web=True,
)

agent.start("Latest news on renewable energy")
2

Switch providers via config

Select Tavily or Serper from the CLI or bot config:
praisonai bot run telegram --web-search --web-provider tavily
from praisonaiagents import Agent

agent = Agent(
    name="Researcher",
    instructions="Use Tavily for deep web search.",
    web=True,
)
# Set WEB_SEARCH_PROVIDER=tavily in the environment, or pass via bot YAML
3

Register a custom search provider

Distribute a custom provider as a pip plugin:
# pyproject.toml
[project.entry-points."praisonai.tools.search"]
my-search = "my_pkg.tools:MySearchTool"
from praisonai.cli.features._search_registry import SearchProviderRegistry

registry = SearchProviderRegistry.default()
tool_cls = registry.resolve("my-search")
tool = tool_cls()

Built-in Providers

ProviderAPI key needed?Free tierBest for
duckduckgoNoYesDefault, no setup, general queries
tavilyYes (TAVILY_API_KEY)LimitedResearch-grade results, citations
serperYes (SERPER_API_KEY)LimitedGoogle SERP-style results
Entry-point group: praisonai.tools.search

Which Provider Should I Pick?


Best Practices

Set TAVILY_API_KEY or SERPER_API_KEY in your shell or deployment secrets — never hard-code keys in agent instructions.
export TAVILY_API_KEY=tvly-...
praisonai bot run telegram --web-search --web-provider tavily
The registry falls back to duckduckgo when an unknown provider name is requested — useful for resilient bot configs.
For high-volume agents, cache search results in Redis or session memory to avoid rate limits on paid providers.

Tool Search

Progressive disclosure when agents have many MCP tools

Endpoint Provider Registry

Plug custom endpoint types into serve / discovery