Server profile

SearXNG MCP Server

SearXNG MCP Server gives assistants search and URL-reading tools backed by an existing SearXNG instance. It supports search filters, suggestions, capability discovery, and replica failover for self-managed search workflows.

Server facts

SearXNG MCP Server

Tech

Runtime / language
node
Transports
stdio
Remote available
No
Authentication
Not specified

Activity

GitHub stars
1,312
Last commit
Data as of

Tags

  • Content Extraction
  • Search Suggestions
  • Searxng
  • Self Hosted
  • Web Search

Overview

SearXNG MCP Server is a standalone Node.js process that connects an assistant to one or more existing SearXNG instances. It is not installed inside SearXNG as a plugin. Search requests can select a page, time range, language, safety level, categories, and engines. Results are available as formatted text or SearXNG-shaped JSON, with relevance and result-count controls. Text output also surfaces direct answers, corrections, suggestions, and infobox information when supplied by the search backend. Additional tools provide autocomplete suggestions and discover the categories, engines, locales, defaults, and plugins exposed by reachable instances.

Beyond search, the server reads URL content with heading, section, paragraph, and character-range controls. HTML becomes Markdown, while JSON and supported text types receive readable representations. Binary downloads, including PDFs and archives, are rejected rather than returned as raw bytes. URL content is cached with an expiry time. Operators configure the backend through SEARXNG_URL, which can hold interchangeable replicas for failover or optional parallel fanout. The preferred backend setup enables SearXNG's JSON format. An opt-in HTML fallback helps with some public instances but supplies less metadata and uses best-effort parsing. Launch choices include npx, a global package, Docker, and HTTP mode. Standard input/output remains the default for local MCP clients.

Install & configure

Requirements

  • Node.js and npx
  • An accessible SearXNG instance, preferably with JSON search enabled
  • An MCP-compatible client
Documented launch / install command
npx -y mcp-searxng

The README's quick start uses npx. Docker and global-package alternatives are documented. MCP_HTTP_PORT enables HTTP mode. SEARXNG_HTML_FALLBACK is an optional compatibility measure when JSON responses are unavailable.

Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.

Claude Desktop configuration
{
  "mcpServers": {
    "mcp-searxng": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-searxng"
      ],
      "env": {
        "SEARXNG_URL": "<SearXNG instance URL or semicolon-separated interchangeable replica URLs>"
      }
    }
  }
}

Read the Claude Desktop setup guide

Config file · Project: .cursor/mcp.json

User: ~/.cursor/mcp.json

The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.

Cursor configuration
{
  "mcpServers": {
    "mcp-searxng": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-searxng"
      ],
      "env": {
        "SEARXNG_URL": "<SearXNG instance URL or semicolon-separated interchangeable replica URLs>"
      }
    }
  }
}

Read the Cursor setup guide

Config file · Workspace: .vscode/mcp.json

For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.

VS Code configuration
{
  "servers": {
    "mcp-searxng": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-searxng"
      ],
      "env": {
        "SEARXNG_URL": "<SearXNG instance URL or semicolon-separated interchangeable replica URLs>"
      }
    }
  }
}

Read the VS Code setup guide

Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json

Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json

Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.

Windsurf configuration
{
  "mcpServers": {
    "mcp-searxng": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-searxng"
      ],
      "env": {
        "SEARXNG_URL": "<SearXNG instance URL or semicolon-separated interchangeable replica URLs>"
      }
    }
  }
}

Read the Windsurf setup guide

Config file · Project scope: .mcp.json at the repository root

The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.

Claude Code configuration
{
  "mcpServers": {
    "mcp-searxng": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-searxng"
      ],
      "env": {
        "SEARXNG_URL": "<SearXNG instance URL or semicolon-separated interchangeable replica URLs>"
      }
    }
  }
}

Read the Claude Code setup guide

Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.

Tools

Source: repository README. Tool descriptions are a documented snapshot, not a live capability check.

ToolWhat it does
searxng_web_searchSearch SearXNG with pagination, filters, and text or JSON responses.
searxng_search_suggestionsRequest autocomplete suggestions for a partial or complete query.
searxng_instance_infoInspect shared and available capabilities across configured reachable instances.
web_url_readRead supported URL content with section, paragraph, heading, and character-range controls.

Names, permissions, and defaults can change. Check the current upstream documentation before granting access.

Use cases

  • Add filtered web research to an assistant using an existing SearXNG deployment.
  • Read selected sections or headings from a result URL.
  • Discover available search engines before selecting query filters.
  • Use interchangeable SearXNG replicas for failover.

Strengths

  • Uses a configurable SearXNG backend instead of a required search API key.
  • Combines search, suggestions, instance discovery, and URL reading.
  • Supports replica failover and optional parallel fanout.

Limitations

  • Requires an accessible SearXNG instance.
  • HTML fallback is best-effort and loses relevance scores and engine metadata.
  • The URL reader rejects PDFs and other binary downloads.

Frequently asked questions

No. It runs separately and calls the configured SearXNG HTTP API.

Yes. SEARXNG_URL accepts semicolon-separated interchangeable replicas; failover is supported and fanout is optional.

Enabling JSON on an instance you control is recommended. An opt-in HTML fallback can handle some failures but returns limited metadata.

No. The documented URL reader rejects PDFs and other binary downloads with an explanatory hint.

Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.

Related MCP servers

Tavily MCP Server

Search & Web Data

Tavily MCP Server connects AI clients to web search, page extraction, site mapping, and crawling. Run it locally with an API key or connect to the hosted service using API-key or OAuth authentication.

Firecrawl MCP Server

Search & Web Data

Firecrawl MCP connects AI agents to web search, scraping, crawling, and live browser interaction. It offers hosted access or a local server for collecting structured web context and running research tasks.

AgentQL MCP Server

Search & Web Data

AgentQL MCP Server extracts structured JSON from a web page using a natural-language description of the desired fields. It provides one focused extraction tool for MCP assistants.

Exa MCP Server

Search & Web Data

Exa MCP Server gives AI assistants web search and readable page retrieval, with optional advanced search and agent research tools. It supports hosted connections and a local npm package for research and coding context.

Perplexity API Platform MCP Server

Search & Web Data

The Perplexity API Platform MCP Server gives assistants web search, conversational answers, research, and reasoning tools. It connects to Perplexity’s Search API and Sonar models through local stdio or an HTTP deployment.

ArXiv MCP Server

Search & Web Data

Search arXiv, download papers, and read their contents through an AI assistant. Local storage and research prompts support repeatable literature review and paper analysis.

Bright Data Web MCP

Search & Web Data

Give AI assistants live web search, page extraction, and optional browser automation through Bright Data. Tool groups also provide structured datasets, package information, and AI brand-visibility queries.

DuckDuckGo Search MCP Server

Search & Web Data

Give MCP assistants DuckDuckGo search and webpage text retrieval. It suits research workflows that need regional results, readable page content, and configurable filtering.