Skip to content

Searchgirl

The suite’s search engine. By SearXNG.

Searchgirl is the private search of the Escriba family: metasearch with four faces in a single binary — a web UI, a REST API, an MCP server for agents and LLMs, and an optional AI Answer mode that synthesizes answers with citations. No tracking, no profiles: the engines see your server, never you.

Searchgirl is a value layer on top of SearXNG, the open-source metasearch engine that aggregates results from dozens of engines. SearXNG runs as its unmodified official container, internal and never exposed; Searchgirl consumes it over HTTP and adds the normalized API, the MCP server, the Escriba-family UI and the LLM synthesis. It is not a fork — see License.

  • Anyone who wants private search — the aggregated results of dozens of engines, with the engines seeing your server instead of you, and thumbnails proxied so your browser never touches their hosts.
  • Agent builders giving Claude Code, Claude Desktop or any MCP client live web search, URL reading and cited answers through a single /mcp endpoint.
  • Developers and automators who want a normalized, stable JSON shape (dedup by URL, scores, domains, ISO dates) instead of scraping raw engine responses.
  • Self-hosters of the suite who want the search to share Lockatus single sign-on and hand agents named, individually revocable Bearer tokens.

Four faces, one binary

Web UI, REST API, MCP server and optional AI answers — all served by a single Go binary, on port 8089 in the standard compose.

Private metasearch

The official SearXNG container runs internal and unexposed, aggregating dozens of engines. No tracking, no profiles: the engines see your server, never you.

A clean web UI

Results by category (General, News, Images, Videos, Science, IT), language/date/SafeSearch filters, direct answers and infoboxes, light and dark theme. Thumbnails go through Searchgirl’s own proxy.

Normalized REST API

GET /api/search plus suggestions and an engine catalog, returning a stable shape — dedup by URL, score, domain, ISO dates — independent of SearXNG’s raw JSON.

MCP for agents

search, url_read and answer tools over streamable HTTP at /mcp. One command adds it to Claude Code; the same binary also speaks MCP over stdio.

AI Answer with citations

Optional and off by default: searches, reads the best sources and writes a short answer citing [1][2], with the source list at the foot. Anthropic native or any OpenAI-compatible endpoint (Ollama, OpenRouter, DeepSeek).

URL to Markdown

POST /api/read (and the url_read MCP tool) fetches any public URL and returns it as Markdown, behind an SSRF guard.

Fail-safe by default

The compose publishes the port on 127.0.0.1 only; the bare binary refuses to serve unauthenticated on a public interface. Per-IP rate limiting covers API, MCP and login.

Standalone or federated

A one-user local login (the standard Escriba screen) or OIDC single sign-on through Lockatus. Named Bearer tokens for agents compose with either — revoking one does not rotate the rest.

Install Searchgirl View on GitHub