MCP HubMCP Hub
SecretiveShell

MCP-searxng

by: SecretiveShell

MCP server for connecting agentic systems to search systems via searXNG

61created 13/12/2024
Visit
searXNG
agentic

📌Overview

Purpose: To connect agentic systems with search capabilities using the searXNG search engine.

Overview: MCP-searxng serves as a middleware server that enables seamless interactions between various agentic systems and the searXNG search platform, facilitating web searches through a standardized API interface.

Key Features:

  • Custom Configuration: Allows users to easily configure the server settings in a JSON format to integrate with multiple platforms, ensuring flexibility and ease of use.

  • Versatile Deployment Options: Users can deploy the server via different methods, including direct Git clone and command-line arguments, accommodating various development environments and preferences.


MCP-searxng

An MCP server for connecting agentic systems to search systems via searXNG.

Tools

Search the web with SearXNG.

Prompts

search(query: str) -> f"Searching for {query} using searXNG"

Usage

via uvx

  1. Configure your client JSON like:
{
  "mcpServers": {
    "searxng": {
      "command": "uvx", 
      "args": [
        "mcp-searxng"
      ]
    }
  }
}

via git clone

  1. Add the server to Claude desktop (the entrypoint is main.py).

Clone the repo and add this JSON to Claude desktop. You can run this server with uvx mcp-searxng, or use a local copy of the repo:

{
  "mcpServers": {
    "searxng": {
      "command": "uv", 
      "args": [
        "--project",
        "/absolute/path/to/MCP-searxng/",
        "run",
        "/absolute/path/to/MCP-searxng/mcp-searxng/main.py"
      ]
    }
  }
}

Make sure to change the paths to match your environment.

Custom SearXNG URL

  1. Set the environment variable SEARXNG_URL to the URL of the searxng server (default is http://localhost:8080).

  2. Run your MCP client and you should be able to search the web with searxng.

Note: If you are using Claude desktop, make sure to kill the process (task manager or equivalent) before running the server again.