home / mcp / searxng mcp server

SearXNG MCP Server

MCP Server for SearXNG

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "ihor-sokoliuk-mcp-searxng": {
      "command": "mcp-searxng",
      "args": [],
      "env": {
        "NO_PROXY": "localhost,.local",
        "HTTP_PROXY": "http://proxy.company.com:8080",
        "USER_AGENT": "MyBot/1.0",
        "HTTPS_PROXY": "http://proxy.company.com:8080",
        "SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL",
        "AUTH_PASSWORD": "pass",
        "AUTH_USERNAME": "user"
      }
    }
  }
}

You can add SearXNG web search capabilities to your MCP setup. This server lets you perform web searches, read website content as markdown, and control results with time, language, and safety filters, all through MCP-compatible endpoints.

How to use

To use this MCP server, run it in your MCP client environment and connect to the provided MCP endpoints. You will be able to perform web searches, retrieve search results with pagination, and fetch content from URLs as markdown with optional section and heading targeting. Use the results to build richer search experiences, dashboards, or automation that relies on live web data.

How to install

Prerequisites: ensure you have a runtime environment for MCP servers (Node.js/npm or a compatible environment) and access to an MCP client that can consume MCP endpoints.

{
  "mcpServers": {
    "searxng_npx": {
      "command": "npx",
      "args": ["-y", "mcp-searxng"],
      "env": {
        "SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL"
      }
    },
    "searxng_npm": {
      "command": "mcp-searxng",
      "args": [],
      "env": {
        "SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL"
      }
    },
    "searxng_docker": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "SEARXNG_URL",
        "isokoliuk/mcp-searxng:latest"
      ],
      "env": {
        "SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL"
      }
    }
  }
}

Configuration guidance and notes

The server accepts a SearXNG instance URL via the SEARXNG_URL environment variable. You can also supply optional variables to customize behavior, including authentication for protected instances, a custom user agent, and network proxy settings. When using Docker, you can pass these settings through corresponding -e flags.

Security and networking

If you deploy in a shared or public environment, consider enabling HTTP-proxy controls and restricting access to MCP endpoints. Use AUTH_USERNAME and AUTH_PASSWORD when your SearXNG instance requires basic authentication, and review NO_PROXY to avoid routing internal hosts through proxies.

Tools and capabilities

- searxng_web_search: Execute web searches with pagination, including time range and language filtering, plus safe search levels.

- web_url_read: Read and convert content from a URL to markdown with advanced extraction options like section targeting and paragraph ranges.

Available tools

searxng_web_search

Execute web searches with pagination and optional time range, language, and safe search controls.

web_url_read

Fetch content from a URL and convert it to markdown with advanced extraction options such as sections, headings, and paragraph ranges.