SearXNG MCP Server
Сервер MCP SearXNG
Реализация сервера MCP, интегрирующаяся с SearXNG, предоставляющая возможности метапоиска, ориентированные на конфиденциальность.
Функции
Мета-поиск : объединяет результаты из нескольких поисковых систем.
Конфиденциальность : без отслеживания и профилирования пользователей
Несколько категорий : поддержка общих тем, новостей, науки, файлов, изображений, видео и многого другого.
Поддержка языков : поиск на определенных языках или на всех языках
Фильтрация по временному диапазону : фильтрация результатов по дню, неделе, месяцу или году.
Безопасный поиск : три уровня фильтрации безопасного поиска
Поддержка отката : несколько экземпляров SearXNG для надежности
Related MCP server: SearXNG MCP Server
Установка
Установка через Smithery
Чтобы автоматически установить SearXNG MCP Server для Claude Desktop через Smithery :
npx -y @smithery/cli install @kevinwatt/mcp-server-searxng --client claudeРучная установка
npm install -g @kevinwatt/mcp-server-searxngИспользование
Прямой запуск
mcp-server-searxngС Dive Desktop
Нажмите «+ Добавить сервер MCP» в Dive Desktop.
Скопируйте и вставьте эту конфигурацию:
{
"mcpServers": {
"searxng": {
"command": "npx",
"args": [
"-y",
"@kevinwatt/mcp-server-searxng"
]
}
}
}Нажмите «Сохранить», чтобы установить сервер MCP.
Документация по инструменту
веб-поиск
Выполнять метапоиск в нескольких поисковых системах
Входные данные:
query(строка): Условия поискаpage(номер, необязательно): Номер страницы (по умолчанию: 1)language(строка, необязательно): Код языка (например, «en», «all», по умолчанию: «all»)categories(массив, необязательно): Категории поиска (по умолчанию: ['general'])Доступно: «общие», «новости», «наука», «файлы», «изображения», «видео», «музыка», «социальные сети», «it»
time_range(строка, необязательно): Фильтр времени (день/неделя/месяц/год)safesearch(число, необязательно): Уровень безопасного поиска (0: Нет, 1: Умеренный, 2: Строгий, по умолчанию: 1)
Разработка
git clone https://github.com/kevinwatt/mcp-server-searxng.git
cd mcp-server-searxng
npm install
npm run build
npm startЛицензия
Этот сервер MCP лицензирован по лицензии MIT. Подробности см. в файле LICENSE.
Предпосылки
Вам нужен запущенный локальный экземпляр SearXNG. Чтобы настроить его:
Запустите SearXNG с Docker
Быстрый старт
# 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Флаг --restart always гарантирует, что:
Контейнер запускается автоматически при запуске демона Docker
Контейнер автоматически перезапускается в случае сбоя
Контейнер автоматически перезапускается, если он остановлен, если только он явно не остановлен пользователем.
Индивидуальная конфигурация
Отредактируйте searxng/settings.yml следующим образом:
Изменить список поисковых систем
Настройте параметры безопасности
Настроить язык пользовательского интерфейса
Изменить ограничения API
Подробные параметры конфигурации см. в документации SearXNG.
Переменные среды
SEARXNG_INSTANCES: список URL-адресов экземпляров SearXNG, разделенных запятыми. По умолчанию:http://localhost:8080SEARXNG_USER_AGENT: Пользовательский заголовок User-Agent для запросов. По умолчанию:MCP-SearXNG/1.0NODE_TLS_REJECT_UNAUTHORIZED: установите значение «0», чтобы обойти проверку SSL-сертификата (для разработки с самоподписанными сертификатами). Значение по умолчанию: не определено (проверка SSL включена)
Пример конфигурации со всеми опциями:
{
"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"
}
}
}
}⚠️ Предупреждение: отключение проверки SSL-сертификата не рекомендуется в производственных средах.
Available Tools
1 toolweb_searchA
Performs a web search using SearXNG, ideal for general queries, news, articles and online content. Supports multiple search categories, languages, time ranges and safe search filtering. Returns relevant results from multiple search engines combined.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query | |
| page | No | Page number (default 1) | |
| language | No | Search language code (e.g. 'en', 'zh', 'jp', 'all') | all |
| categories | No | ||
| time_range | No | all_time | |
| safesearch | No | 0: None, 1: Moderate, 2: Strict |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses that results come from multiple search engines combined and that filtering options are supported, but it does not mention limitations, rate limits, result count, or whether the operation is read-only. This is adequate but not deeply transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: purpose, supported controls, and output behavior. The most important information is front-loaded, with no filler or repeated schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter tool with no output schema and no annotations, the description covers purpose and high-level behavior but not result format, pagination behavior, or edge cases like empty results. It is sufficient for basic invocation but leaves some context to be inferred.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%, and the schema already documents query, page, language, and safesearch values. The description adds a high-level statement that categories, languages, time ranges, and safe search are supported, but it does not add details beyond the schema. The generic references are not enough to meaningfully augment the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Performs a web search using SearXNG', and enumerates concrete use cases such as general queries, news, articles, and online content. It also distinguishes itself from a plain search by noting results come from multiple search engines combined. With no sibling tools to contrast against, this is maximum clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the tool is 'ideal for general queries, news, articles and online content', which provides clear usage context. It does not state explicit when-not-to-use conditions or alternatives, but that is reasonable since no sibling tools are listed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
web_search
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined as performing web searches using SearXNG, making it distinct by default.
A single tool inherently has perfect naming consistency, as there are no other tools to compare it against. The name 'web_search' follows a clear verb_noun pattern and is appropriate for its function.
One tool is too few for a server named 'SearXNG MCP Server', which suggests a broader scope for search functionality. While the tool covers general web searches, the lack of additional tools (e.g., for image search, news-specific searches, or configuration) makes the set feel thin and underdeveloped for the domain.
The tool surface is severely incomplete for a search server. It only provides general web search, missing obvious extensions like image search, video search, news search, or advanced filtering tools that would be expected in a comprehensive search interface, leading to significant gaps in functionality.
Maintenance
Related MCP Connectors
Search the web, images, videos, news, and local businesses with robust filters, freshness controls…
Web search with quality scores; web pages are read on your computer by the local server.
Google, Bing, DuckDuckGo and Google Maps search results, free without an API key.
Search privacy tools, guides, stacks and glossary, find app replacements, run privacy checks.
Related MCP Servers
- AlicenseAqualityDmaintenanceA privacy-focused search server built on SearXNG that provides unlimited, multi-source web searching across 100+ engines. It enables AI tools to perform advanced searches with specialized filters for time, language, and content categories without API costs or rate limits.213MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enables web search capabilities by integrating with a SearXNG instance to aggregate results from over 130 engines. It allows users to perform filtered searches across categories like news, science, and social media while supporting advanced parameters for language and time range.11MIT
- AlicenseNot gradedqualityCmaintenanceA privacy-friendly web search MCP server using SearXNG, enabling searches across multiple engines and categories.1MIT
- AlicenseNot gradedqualityDmaintenancePrivacy-respecting, self-hosted metasearch MCP server that aggregates results from multiple search engines and fetches page content as Markdown.15 npm1MIT