SearXNG HTTP MCP — Claude Code MCP server: search across 200+ engines
An MCP server that brings SearXNG into your coding agent: 200+ engines, 30+ categories, autocomplete. Ships as a Docker image or runs through uvx.
claude mcp add --env API_KEY=<API_KEY> --transport stdio searxng-http-mcp -- docker run -i --rm -e API_KEY ghcr.io/whw23/searxng-http-mcpWhat SearXNG HTTP MCP does
SearXNG HTTP MCP puts the SearXNG metasearch engine behind MCP tools. Your agent can query 200+ engines and 30+ categories such as news, images and videos. Returns are trimmed to the essentials, so context stays manageable. A separate tool lists engines by category, and autocomplete helps phrase the query.
Three ways to run it. The Docker image is self-contained — SearXNG is baked in, one exposed port 8888 serves both the MCP endpoint at /mcp and the SearXNG web UI through a reverse proxy. For a client-side setup, the same image starts with --stdio. The third path, uvx searxng-http-mcp, talks to a SearXNG you already run; point SEARXNG_URL at it, otherwise the default is http://127.0.0.1:8080.
Auth comes in two flavours: x-api-key and HTTP Basic Auth. Every install example carries an API_KEY variable, and the server won't match that config without a key. The PyPI package calls for Python 3.14+.
What it helps with
- give an agent web search without a paid API
- query news, images and video across categories in one call
- run private search from a single Docker container
- cap result size so the model's context survives
- hook an existing SearXNG instance up via
SEARXNG_URL
Example prompts for the agent
- Search SearXNG for recent Docker healthcheck write-ups
- List which engines are available in the it category
- Suggest autocomplete terms for kubernetes
How to install SearXNG HTTP MCP
Platform CLI
claude mcp add --env API_KEY=<API_KEY> --transport stdio searxng-http-mcp -- docker run -i --rm -e API_KEY ghcr.io/whw23/searxng-http-mcpReplace <…> with your own values
Platform CLI
codex mcp add searxng-http-mcp --env API_KEY=<API_KEY> -- docker run -i --rm -e API_KEY ghcr.io/whw23/searxng-http-mcpReplace <…> with your own values
Config file
{
"mcpServers": {
"searxng-http-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_KEY",
"ghcr.io/whw23/searxng-http-mcp"
],
"env": {
"API_KEY": "<API_KEY>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"searxng-http-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"API_KEY",
"ghcr.io/whw23/searxng-http-mcp"
],
"env": {
"API_KEY": "<API_KEY>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e API_KEY=<API_KEY> searxng-http-mcp docker run -i --rm -e API_KEY ghcr.io/whw23/searxng-http-mcpReplace <…> with your own values
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 SearXNG HTTP MCP
How do I install SearXNG HTTP MCP in Claude Code?
Run claude mcp add --env API_KEY=<API_KEY> --transport stdio searxng-http-mcp -- docker run -i --rm -e API_KEY ghcr.io/whw23/searxng-http-mcp with your own key in place of the placeholder.
What does SearXNG HTTP MCP do?
It gives the agent metasearch tools backed by SearXNG: 200+ engines, 30+ categories, autocomplete and engine discovery grouped by category.
Do I need a SearXNG instance of my own?
Only for the uvx route. The Docker image already contains SearXNG, so nothing else has to be running.