webserp

Web search across 7 engines in parallel with browser impersonation. Use when the agent needs current information from the web — news, documentation, recent events, or anything beyond training data. Returns structured JSON (SearXNG-compatible) with title, URL, and content. Uses curl_cffi to mimic real browser fingerprints so requests don't get blocked. Install with `pip install webserp`. No API keys needed.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "webserp" with this command: npx skills add paperboardofficial/webserp

webserp

Metasearch CLI — queries Google, DuckDuckGo, Brave, Yahoo, Mojeek, Startpage, and Presearch in parallel. Uses curl_cffi for browser impersonation. Results like a browser, speed like an API.

When to use webserp

  1. You need current/recent information not in your training data
  2. You need to verify facts or find sources
  3. You need to discover URLs, documentation, or code repositories
  4. The user asks about recent events, releases, or news

Install

pip install webserp

No API keys, no configuration. Just install and search.

Usage

# Search all 7 engines (default)
webserp "how to deploy docker containers"

# Search specific engines
webserp "python async tutorial" --engines google,brave,duckduckgo

# Limit results per engine
webserp "rust vs go" --max-results 5

# Show which engines succeeded/failed
webserp "test query" --verbose

# Set per-engine timeout
webserp "query" --timeout 15

# Use a proxy
webserp "query" --proxy "socks5://127.0.0.1:1080"

Options

FlagDescriptionDefault
-e, --enginesComma-separated engine listall
-n, --max-resultsMax results per engine10
--timeoutPer-engine timeout (seconds)10
--proxyProxy URL for all requestsnone
--verboseShow engine status in stderrfalse

Output format

JSON to stdout (SearXNG-compatible):

{
  "query": "deployment issue",
  "number_of_results": 42,
  "results": [
    {
      "title": "How to fix Docker deployment issues",
      "url": "https://example.com/docker-fix",
      "content": "Common Docker deployment problems and solutions...",
      "engine": "google"
    }
  ],
  "suggestions": [],
  "unresponsive_engines": []
}

Parse with jq or any JSON parser. The results array contains title, url, content, and engine for each result. unresponsive_engines lists any engines that failed with the error reason.

Tips

  • Use --max-results 5 to keep output concise when you just need a few links
  • Use --engines google,brave to target specific engines for faster results
  • Use --verbose (writes to stderr) to see which engines responded — the JSON on stdout is unaffected
  • Results are deduplicated by URL across engines — you won't get the same link twice

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

Abra Flexibee

ABRA FlexiBee integration. Manage data, records, and automate workflows. Use when the user wants to interact with ABRA FlexiBee data.

Registry SourceRecently Updated
Automation

Abyssale

Abyssale integration. Manage data, records, and automate workflows. Use when the user wants to interact with Abyssale data.

Registry SourceRecently Updated
Automation

Ab Tasty

A/B Tasty integration. Manage data, records, and automate workflows. Use when the user wants to interact with A/B Tasty data.

Registry SourceRecently Updated
Automation

Abuselpdb

AbuselPDB integration. Manage data, records, and automate workflows. Use when the user wants to interact with AbuselPDB data.

Registry SourceRecently Updated