SearXNG Public

SearXNG Public

A Model Context Protocol Server for retrieving data from public SearXNG instances, with fallback support

25
Stars
6
Forks
0
Releases

Overview

This MCP server reads from up to three public SearXNG servers (one main and two fallbacks) and scrapes the HTML search results, since many public instances do not expose a JSON API. It converts the scraped results into JSON so downstream MCP clients can consume them. Installation is via npm install mcp-searxng-public and configuration is done with environment variables: SEARXNG_BASE_URL supports multiple base URLs separated by semicolons, and DEFAULT_LANGUAGE sets the default language for searches. The server exposes a single endpoint, search, with four parameters: query (required), time_range (optional; day, month, or year per the SearXNG spec), language (optional; falls back to DEFAULT_LANGUAGE if not provided), and detailed (optional; when true, performs a more thorough search by querying up to three servers and fetching pages 1-3 from each, then merging and deduplicating). The response is a JSON array of objects with fields url and summary. The README notes you may need to adjust env vars and that a report task can help identify accessible SearXNG instances. An LM Studio install link is provided for easy setup.

Details

Owner
pwilkin
Language
JavaScript
License
MIT License
Updated
2025-12-07

Features

Multi-server fallback scraping

Reads from up to three public SearXNG servers (one main and two fallbacks) and scrapes HTML results when JSON APIs are not available.

HTML-to-JSON parsing

Converts SearXNG HTML search results into a structured JSON format.

JSON output for MCP clients

Returns results as a JSON array of objects (url and summary) for MCP clients.

Configurable base URLs

SEARXNG_BASE_URL env var accepts multiple base URLs separated by semicolons.

Language configuration

DEFAULT_LANGUAGE environment variable sets the default language for searches.

Search endpoint with parameters

Exposes a search endpoint that accepts query, time_range, language, and detailed parameters.

Detailed search mode

When detailed is true, performs a more thorough search by querying up to three servers and fetching pages 1-3 from each, then merges results.

Install and run with LM Studio/Cursor

Install via npm and run with Cursor-compatible clients; includes environment guidance and a configuration example.

Audience

Cursor usersPower MCP-based search UIs by querying multiple public SearXNG instances and returning JSON.
MCP developersBuild or integrate MCP servers that fetch results from public SearXNG instances and normalize them to JSON.

Tags

MCP serverSearXNGHTML scrapingJSON outputfallback serverspublic instancesmetasearchscraper