# mcpsurfr

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

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 135
- Автор: nkapila6
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/nkapila6/mcpsurfr
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/mcp/mcpsurfr

## Что делает

Сервер находит информацию в сети и отдаёт моделям готовые выжимки вместо целых страниц. Запросы идут через библиотеку `ddgs`, которая в режиме `auto` опрашивает несколько поисковиков одновременно. Среди поддерживаемых бэкендов есть DuckDuckGo, Brave, Wikipedia и Google. Если прямой поиск через Google блокируется, сервер сам переключается на запасные источники.

Ранжирование страниц происходит прямо на вашем компьютере с помощью небольшой модели MobileBERT на чистом numpy. Текст со страниц очищается от баннеров и навигации, сохраняя разметку таблиц и блоков кода. Инструмент `search` возвращает только подходящие абзацы с адресами источников. Это экономит контекстное окно модели.

Для запуска через готовый образ потребуется установленный Docker. При необходимости общий лимит символов для полностраничных инструментов настраивается через переменную окружения `MCPSURFR_MAX_CHARS`.

## Требования
- Нужно: Docker

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add mcpsurfr -- docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1
```

### Codex

**Командой платформы**
```bash
codex mcp add mcpsurfr -- docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1
```

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "mcpsurfr": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/nkapila6/mcpsurfr:v1.1.1"
            ]
        }
    }
}
```

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "mcpsurfr": {
            "type": "stdio",
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/nkapila6/mcpsurfr:v1.1.1"
            ]
        }
    }
}
```

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add mcpsurfr docker run -i --rm ghcr.io/nkapila6/mcpsurfr:v1.1.1
```

## Когда брать
- находить свежие факты в сети без покупки ключей к поисковым API
- извлекать из веб-страниц только нужные абзацы без рекламы и меню
- собирать информацию сразу из нескольких поисковых систем через deep_research
- сохранять разметку таблиц и фрагментов кода при чтении веб-страниц

## Примеры запросов агенту
- Найди через mcpsurfr актуальные изменения в последнем релизе Go
- Запусти deep_research по теме архитектуры современных MCP-серверов
- Найди на Wikipedia статьи про историю языка Rust и выдели ключевые даты

## Похожие
- [Scrapling MCP Server](https://affpapa.org/nevibecode/mcp/scrapling-mcp-server.md) — MCP-сервер · ★ 89433
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119160
- [AIHawk](https://affpapa.org/nevibecode/mcp/aihawk.md) — MCP-сервер · ★ 32221
- [Skyvern](https://affpapa.org/nevibecode/mcp/skyvern.md) — MCP-сервер · ★ 23263
- [SeleniumBase MCP](https://affpapa.org/nevibecode/mcp/seleniumbase-mcp.md) — MCP-сервер · ★ 13169
- [apify-mcp-server](https://affpapa.org/nevibecode/mcp/apify-mcp-server.md) — MCP-сервер · ★ 12927

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
