SoSearch MCP

Веб-поиск без API-ключей для агентов: Rust-сервис по HTTP или MCP сводит выдачу DuckDuckGo, Brave и Yahoo в один JSON.

  • 135 ★ репозитория
  • Последний коммит
MCP-сервер

Широкий доступ

Почему такой уровень

  • Выдачу поисковиков собирают с подменой TLS-отпечатка браузера: это может нарушать их условия и привести к блокировке IP.
  • Поисковые запросы агента уходят напрямую в DuckDuckGo, Yahoo и Brave.
Все причины и проверки

netlops/sosearch

Установка

Ручная установка

./SoSearch --mcp

Запуск MCP-режима готового бинарного файла из GitHub Releases или после сборки.

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Выдачу поисковиков собирают с подменой TLS-отпечатка браузера: это может нарушать их условия и привести к блокировке IP.
  • Поисковые запросы агента уходят напрямую в DuckDuckGo, Yahoo и Brave.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

SoSearch — сервис на Rust, который повторяет API вроде SerpAPI и Tavily без платных ключей. Запрос параллельно уходит в DuckDuckGo, Yahoo (на базе Bing) и Brave Search, HTML-выдача разбирается и приводится к единому массиву `SearchResult` в JSON. Чтобы реже получать блокировки, клиент `rquest` подменяет TLS-отпечаток под Chrome 124. Запуск без флагов поднимает HTTP-сервер (`/search?q=...`, порт 10080), запуск с `--mcp` — MCP-сервер по stdio с инструментом `web_search`. В README приведены конфигурации для Claude Desktop и Gemini CLI, для Windows отдельный пример.

Для кого. Владельцам локальных агентов и самохостинг-стендов, которым нужен веб-поиск без регистрации в платных поисковых API.

Подходит, если

  • Локальному агенту нужен веб-поиск, а платить за ключ SerpAPI или Tavily не хочется.
  • Один запрос сверяют сразу по трем независимым выдачам: DuckDuckGo, Yahoo и Brave.
  • Сервис поиска поднимают в Docker внутри своей сети и обращаются к нему по HTTP.
  • Claude Desktop получает поиск через `--mcp`, без облачных посредников.

Не подходит, если

  • Проект коммерческий: лицензия CC BY-NC 4.0 запрещает коммерческое использование.
  • Нужна выдача с гарантиями: парсинг HTML ломается при смене разметки поисковиков.
  • Правила поисковых систем в вашем сценарии запрещают автоматические запросы.

Пример запроса к агенту

Найди в вебе три свежих обзора Rust 1.90 и дай ссылки.

MCP

Транспорт
stdio
Авторизация
не нужна

Ограничения

Лицензия CC BY-NC 4.0 разрешает только некоммерческое использование. SoSearch разбирает HTML выдачи DuckDuckGo, Yahoo и Brave и маскируется под Chrome, поэтому смена разметки или блокировка по IP ломает результаты, а автоматические запросы могут нарушать условия поисковиков. Пакетов в реестрах нет: готовые бинарные файлы лежат в GitHub Releases, либо сборка командой `cargo run --release` (на Windows нужны Rust, CMake, NASM и LLVM/Clang). Через MCP доступен один инструмент `web_search`, страницы целиком он не загружает.

Как отключить. Удалите запись `sosearch` из конфигурации MCP-клиента и остановите HTTP-процесс или контейнер, если запускали его.

Частые вопросы

Как подключить SoSearch к Claude Desktop?

Добавьте в `claude_desktop_config.json` сервер `sosearch` с `command`, указывающей на бинарный файл, и `args` `["--mcp"]`. На Windows в пути используйте двойные обратные слеши.

Какие поисковики опрашивает SoSearch?

DuckDuckGo, Yahoo на базе Bing и Brave Search. Результаты приводятся к одному формату `SearchResult`.

Как проверить HTTP-режим?

Запустите `cargo run --release` и выполните `curl "http://localhost:10080/search?q=hello+world"`.

Нужны ли API-ключи?

Нет. Проект запрашивает поисковики напрямую и ключей не требует.

Можно ли запустить SoSearch в Docker?

Да: в репозитории есть `Dockerfile` и `docker-compose.yml`, а образы публикует сценарий `docker.yml`. Для быстрой проверки подойдет `cargo run --release`.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы

Веб-поиск через DuckDuckGo и чтение страниц для агента без API-ключей, с ограничением частоты запросов

MCP-серверРасширенный доступ1,6 тыс.Звезды репозитория

Локальный MCP-сервер без ключей API: поиск по нескольким системам, загрузка страниц и чтение документов для LLM.

MCP-серверРасширенный доступ179Звезды репозитория

Локальный метапоиск на Rust по мотивам SearXNG: агент получает выдачу в JSON и читает страницы с жестким лимитом на размер ответа

MCP-серверРасширенный доступ961Звезды репозитория

MCP-сервер веб-поиска, который сразу отдает агенту текст найденных страниц: ответы Stack Overflow, обсуждения GitHub, статьи arXiv

MCP-серверРасширенный доступ404Звезды репозитория

Локальный веб-поиск для агента без ключей API: результаты ранжируются на вашей машине, в ответ идут только нужные абзацы

MCP-серверРасширенный доступ151Звезды репозитория

MCP-сервер с поиском DuckDuckGo и извлечением текста страниц: можно передать сразу несколько адресов

MCP-серверРасширенный доступ151Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
SoSearch (эта карточка)нетне нужна135
Brave Search API Skillsда196учит агента вызывать официальный Search API Brave по ключу; SoSearch разбирает HTML трех движков без ключей
Tavily Agent Skillsда490работает через платформу Tavily и ее ключ; SoSearch запускается у вас и опрашивает поисковики напрямую

Коротко о README

README объясняет идею (быстрый поиск на `tokio`, снижение числа блокировок через TLS-имитацию, единый формат выдачи), перечисляет движки и структуру проекта, описывает режимы HTTP и MCP и дает быстрый старт для Linux, macOS и Windows. Скиллы внутри репозитория нужны для разработки самого проекта.

Бейдж для README

Сообщить о проблеме