Skip to main content
Glama
benreichman

SearXNG MCP Server

by benreichman

SearXNG MCP Server

A Model Context Protocol (MCP) server that provides web search and scraping capabilities using a local SearXNG instance. Designed for integration with LM Studio and other MCP-compatible AI clients.

Features

  • Web Search: Search across multiple engines (DuckDuckGo, Google, Bing, Brave) via SearXNG

  • Content Scraping: Automatically scrape and format content from search results

  • Direct URL Scraping: Extract content from specific URLs

  • Tor Support: Optional anonymous scraping through Tor network

  • MCP Protocol: Full implementation of MCP HTTP protocol for seamless AI assistant integration

  • Clean Text Extraction: Remove emojis, normalize formatting, and limit word count

Related MCP server: SearXNG MCP Server

Prerequisites

  • Python 3.8+

  • A running SearXNG instance (default: http://localhost:8080)

Installation

  1. Clone or download this repository

  2. Install dependencies:

pip install -r requirements.txt
  1. Ensure SearXNG is running locally at http://localhost:8080

Configuration

Edit searxng_mcp_server.py to customize:

SEARXNG_BASE_URL = "http://localhost:8080/search"  # Your SearXNG instance
DEFAULT_MAX_RESULTS = 5                            # Default search results
DEFAULT_MAX_WORDS = 5000                           # Max words per page
REQUEST_TIMEOUT = 20                               # Request timeout (seconds)
SERVER_PORT = 8765                                 # Server port
USE_TOR = False                                    # Route scraping through Tor (requires Tor on 127.0.0.1:9050)

Tor Support

To enable anonymous scraping through Tor:

  1. Install and start Tor service (must be running on 127.0.0.1:9050)

  2. Set USE_TOR = True in the configuration

  3. Restart the server

When enabled, all web scraping requests will be routed through the Tor network.

Usage

Start the Server

python searxng_mcp_server.py

The server will run on http://localhost:8765

Configure with LM Studio

Add to your LM Studio MCP settings:

{
  "mcpServers": {
    "searxng": {
      "url": "http://localhost:8765",
      "transport": "http"
    }
  }
}

Available Tools

1. search_web

Search the web and scrape resulting pages.

Parameters:

  • query (required): Search query string

  • max_results (optional): Number of results to scrape (default: 5)

Example:

Search for "latest AI developments" and show me the top 3 results

2. get_website

Scrape content from a specific URL.

Parameters:

  • url (required): The URL to scrape

Example:

Get the content from https://example.com

API Endpoints

  • POST / - MCP protocol endpoint

  • GET /health - Health check endpoint

  • GET / - Server info (or SSE fallback)

How It Works

  1. Receives MCP tool calls from AI assistants

  2. Queries SearXNG with specified search terms

  3. Retrieves search results in JSON format

  4. Scrapes content from each result URL

  5. Cleans and formats text (removes HTML, emojis, normalizes spacing)

  6. Truncates content to word limit

  7. Returns formatted results to the AI assistant

License

MIT

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/benreichman/SearXNG-MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server