SearXNG MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BYPARR_URL | No | URL of a Byparr service for browser-solver integration. | |
| SEARXNG_URL | Yes | The base URL of the SearXNG service. This identifies the SearXNG instance, not the MCP endpoint. | |
| MCP_HTTP_HOST | No | Bind address for HTTP transport. The README example uses 0.0.0.0 as the container-side bind address. | |
| MCP_HTTP_PORT | No | Port for running the MCP server over HTTP transport. Leave unset for local STDIO. | |
| FLARESOLVERR_URL | No | URL of a FlareSolverr service for browser-solver integration. | |
| MCP_HTTP_STATELESS | No | Set to true to run the legacy HTTP mode sessionless. | |
| SEARXNG_HTML_FALLBACK | No | Set to true to retry 403/404/non-JSON search responses as HTML. Parsing is best-effort and metadata is limited. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| searxng_web_searchA | Searches the web using SearXNG and returns a list of results, each with a title, URL, and content snippet. CRITICAL: The required parameter name is exactly |
| searxng_search_suggestionsA | Returns autocomplete suggestions from the configured SearXNG instance. Use this to refine vague or partial queries before searching. |
| searxng_instance_infoA | Discovers capabilities from all reachable configured SearXNG instances via /config, including categories.common/available, engines.common/available, defaults, locales, and plugins. |
| web_url_readA | Fetches a URL and returns readable content as markdown. Content-type aware: HTML is converted to markdown; JSON is pretty-printed; plain text, YAML, TOML, and XML are returned as fenced readable text. PDF text extraction is supported with bounded input, output, page count, time, concurrency, and memory; OCR is not supported. Binary, media, archive, and octet-stream downloads other than PDFs are intentionally rejected instead of being returned as raw bytes. When the operator configures browser solvers, mcp-searxng attempts FlareSolverr first and then Byparr only after a busy or transient-unavailable acquisition; cache hits bypass acquisition and a final busy or unavailable provider uses one uncached direct-fetch fallback. Three modes: (1) Full content — omit filtering params; use |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Server Configuration | Current server configuration and environment variables |
| Usage Guide | How to use the MCP SearXNG server effectively |
TDQS
Scored across 4 tools
Each tool has a clearly distinct role: web search, autocomplete suggestions, instance capability discovery, and URL content reading. The descriptions explicitly guide follow-up workflows, making misselection unlikely.
Three tools share the predictable `searxng_` prefix and snake_case, but `web_url_read` breaks that prefix pattern. The naming is still readable and mostly consistent.
Four tools is well-scoped for a SearXNG integration: search, suggestions, instance info, and content fetching. Each earns its place without redundancy.
The surface covers the main search workflow end-to-end, including query refinement and reading result content. Some advanced search modes may be handled via parameters rather than dedicated tools, leaving only minor gaps.