Tools

Web Search

External web lookup and extraction capabilities.

Web Search

What it is

External web lookup and extraction capabilities.

In plain terms

Think of it as sending a scout out to comb through the internet on your behalf, collecting relevant pages and handing back their clean readable text, rather than you opening ten browser tabs yourself. Hermes can look things up and also pull the full text out of a specific page once it knows the page exists.

Why it matters

web_search for lookup and web_extract for pulling structured content out of a page cover two related jobs, and Hermes ships plugin backends for Brave, DuckDuckGo, Exa, Firecrawl, Parallel, SearXNG, Tavily, and xAI so the actual provider behind either is swappable. The research briefing loop workflow leans on this toolset most directly, since turning scattered sources into a decision-ready brief starts with reliable retrieval. With only two registrations in its toolset, it stays deliberately lightweight rather than bundling in unrelated capability.

How it works

Two tools make up the web toolset: web_search, which returns up to five results by default, and web_extract, which pulls the actual content out of as many as five URLs per call (tools/web_tools.py). Long pages get head-and-tail truncated to a configurable character budget — 15,000 by default — with the full text saved to disk for later, so a single huge page doesn’t blow up the response. Which search engine actually runs behind either tool is a config choice (web.backend) among plugin-registered providers, including Exa, Firecrawl, Parallel, Tavily, SearXNG, Brave, DuckDuckGo, and xAI, so switching providers doesn’t change how the tool is called. web_extract also works directly on PDF URLs like arXiv papers, and it blocks any URL that looks like it’s carrying an embedded API key or that points at a private network address.

A concrete example

A founder wants to compare the pricing pages of three competitor SaaS products before a meeting.

  1. Hermes runs web_search for each competitor’s pricing page to find the right URL.
  2. It runs web_extract on the top result for each, pulling the actual plan names and prices out of the page.
  3. It returns a short side-by-side summary with links back to each original source. The reader gets one ready-made comparison instead of opening and skimming three separate websites themselves.

How it connects

This note belongs to the Tools family. Its closest neighboring concepts are: Code Execution, Vision, Agent Runtime, Personal OS.

Source evidence

  • vendor/hermes-agent/toolsets.py#<file> — Structural Source Map fallback for toolsets.py. A core source file in the Tool Registry and Toolsets structure within Tools, Toolsets, and MCP.

Workflows

  • Research Briefing Loop
  • No article currently mentions this concept by name/alias often enough to qualify (see mention-mining policy).