---
name: web_search
label: Web Search
description: Search the web using a private SearXNG instance and return a list of results with titles, URLs, and snippets. Use when you need to find information or URLs without already knowing where to look. Pair with web_fetch to read the full content of any result.
language: typescript
inputs:
  query:
    type: string
    description: The search query
  max_results:
    type: number
    description: Maximum number of results to return (default 10, max 20)
    optional: true
---

# Web Search

Searches the web via a self-hosted SearXNG instance. Returns titles, URLs, and content snippets.

## Usage pattern

1. Call `web_search` with a query to get a list of results
2. Call `web_fetch` on any result URL to read its full content

## Configuration

The SearXNG instance URL is read from the `PI_SEARXNG_URL` environment variable.
