Search that shows its work — Claude Code MCP server
A self-hosted MCP server that searches the web, reads pages, and exposes signals about how much to trust its results. Useful when an agent needs traceable sources.
Open on GitHubWhat Search that shows its work does
The server offers five tools. web_search finds pages and reads selected results; web_read opens pages by URL, including PDFs and scans; web_image_search returns images with the address of the page hosting them. web_screenshot pairs a page image with text from the same visit, while web_deep_search builds an answer from several sources and flags claims it could not confirm.
It runs on your machine against your own metasearch instance, with a model key or without one. Docker Compose requires SEARXNG_SECRET and BROWSER_WS_SECRET; startup stops if either value is missing. The stdio option is available too, but stdout carries the protocol, so unrelated output breaks client communication.
What it helps with
- find web pages and read their contents
- open pages or PDFs and interpret scans
- compare a page screenshot with its text
- find images and their hosting-page addresses
- build a sourced answer and flag unconfirmed claims
Example prompts for the agent
- Find pages about this library and read several relevant results.
- Read this PDF and check whether it explains the setup.
- Compare the page screenshot with its text, then answer my question.
How to install Search that shows its work
Install
The MCP registry has no launch command for it: see the repository README
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Search that shows its work
How do I install Search that shows its work for Claude Code?
Run these commands in order: git clone https://github.com/AG-Bureau/mcp-search, cd mcp-search, cp .env.example .env, echo "SEARXNG_SECRET=$(openssl rand -hex 32)" >> .env, echo "BROWSER_WS_SECRET=$(openssl rand -hex 16)" >> .env, echo '{}' > door-tokens.json && mkdir -p tls, docker compose -f docker-compose.yml -f wiring/expose-localhost.yml up -d --build, curl -s http://127.0.0.1:8081/healthz.
What does Search that shows its work do?
It searches for and reads web pages, opens URLs and PDFs, finds images, and captures page screenshots. Deep search assembles an answer from several sources and identifies what it could not verify.
What does Docker Compose need to start the server?
Set SEARXNG_SECRET and BROWSER_WS_SECRET; startup refuses to proceed without them. The server also needs a reachable metasearch instance configured through SEARXNG_URL.