An MCP server implementation that integrates with SearXNG, providing privacy-focused meta search capabilities.
An MCP server implementation that integrates with SearXNG, providing privacy-focused meta search capabilities.
To install SearXNG MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @kevinwatt/mcp-server-searxng --client claude
npm install -g @kevinwatt/mcp-server-searxng
mcp-server-searxng
{
"mcpServers": {
"searxng": {
"command": "npx",
"args": [
"-y",
"@kevinwatt/mcp-server-searxng"
]
}
}
}
query
(string): Search termspage
(number, optional): Page number (default: 1)language
(string, optional): Language code (e.g., ‘en’, ‘all’, default: ‘all’)categories
(array, optional): Search categories (default: [‘general’])
time_range
(string, optional): Time filter (day/week/month/year)safesearch
(number, optional): Safe search level (0: None, 1: Moderate, 2: Strict, default: 1)git clone https://github.com/kevinwatt/mcp-server-searxng.git
cd mcp-server-searxng
npm install
npm run build
npm start
This MCP server is licensed under the MIT License. See the LICENSE file for details.
You need a local SearXNG instance running. To set it up:
## Create config directory
mkdir -p searxng
## Create config file
tee searxng/settings.yml << EOF
use_default_settings: true
server:
bind_address: "0.0.0.0"
secret_key: "CHANGE_THIS_TO_SOMETHING_SECURE" # Generate a random key
port: 8080
search:
safe_search: 0
formats:
- html
- json
engines:
- name: google
engine: google
shortcut: g
- name: duckduckgo
engine: duckduckgo
shortcut: d
- name: bing
engine: bing
shortcut: b
server.limiter: false
EOF
## Start container
docker run -d \
--name searxng \
-p 8080:8080 \
-v "$(pwd)/searxng:/etc/searxng" \
searxng/searxng
## Test JSON API with curl
curl -v 'http://localhost:8080/search?q=test&format=json'
## Or visit in browser
http://localhost:8080/search?q=test
## Stop container
docker stop searxng
## Remove container
docker rm searxng
## View container logs
docker logs searxng
## Enable auto-start on boot
docker update --restart always searxng
The --restart always
flag ensures that:
Edit searxng/settings.yml
to:
For detailed configuration options, see SearXNG Documentation
SEARXNG_INSTANCES
: Comma-separated list of SearXNG instances URLs
Default: http://localhost:8080
SEARXNG_USER_AGENT
: Custom User-Agent header for requests
Default: MCP-SearXNG/1.0
NODE_TLS_REJECT_UNAUTHORIZED
: Set to ‘0’ to bypass SSL certificate verification (for development with self-signed certificates)
Default: undefined (SSL verification enabled)
Example configuration with all options:
{
"mcpServers": {
"searxng": {
"name": "searxng",
"command": "npx",
"args": [
"-y",
"@kevinwatt/mcp-server-searxng"
],
"env": {
"SEARXNG_INSTANCES": "http://localhost:8080,https://searx.example.com",
"SEARXNG_USER_AGENT": "CustomBot/1.0",
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
}
}
}
}
⚠️ Warning: Disabling SSL certificate verification is not recommended in production environments.
Created
August 02, 2025
Last Updated
August 02, 2025
Category
Search & Knowledge DiscoveryAuthor
kevinwatt
A Model Context Protocol (MCP) server that integrates with the Ghost Admin API. This server enables programmatic access to Ghost CMS features including post management, page management, member management, and more.
MCP Documentation Management Service - A Model Context Protocol implementation for documentation management