Wigolo: веб-интеллект для AI-агентов без ключей и облака
Wigolo — MCP-сервер с локальным поиском, краулингом и исследованием для AI-агентов. Без API-ключей, без облака, $0 за запрос. Публичная бета.
AI-агент получил собственный браузер — бесплатно и локально
Wigolo — MCP-сервер (Model Context Protocol), который даёт AI-агентам локальный веб-интеллект: поиск, загрузку страниц, краулинг и исследование — без API-ключей, без облака и без платы за запрос. Проект вышел в публичную бету и уже доступен как npm-пакет. Это редкий случай, когда альтернатива платным сервисам выглядит не как компромисс, а как полноценная замена.
Что такое Wigolo и зачем он нужен
Wigolo запускается на вашей машине как MCP-сервер и даёт AI-агенту единую поверхность для всего, что связано с вебом: поиск, загрузка страниц, краулинг, извлечение данных, кэш, поиск похожего, исследование и автономные циклы сбора данных.
Базовые инструменты не требуют API-ключей, все данные остаются в ~/.wigolo/, и нет счёта, который растёт с тем, насколько активно думает агент.
Быстрый старт: одна команда
Для работы нужен Node.js версии 20 и выше, около 1,5 ГБ свободного места. Поддерживаются macOS, Linux и Windows.
Одна команда устанавливает локальный движок — поиск, браузер и модели на устройстве — и автоматически подключает его к агенту:
npx wigolo init --agents=claude-code
# или несколько агентов через запятую:
npx wigolo init --agents=cursor,vscode,codex
npx wigolo doctor — это быстрая проверка всех компонентов без сетевых запросов.Для Docker-окружений доступен готовый образ:
docker run -i --rm -v wigolo-data:/data ghcr.io/knockoutez/wigolo
Флаг -i держит stdin открытым для MCP-протокола, а volume сохраняет локальный кэш и модели между запусками.
Что умеет Wigolo: 10 инструментов
| Инструмент | Что делает |
|---|---|
🔎 search | Мультидвижковый поиск (18 адаптеров), ML-ранжирование, параллельные запросы |
📄 fetch | Загрузка URL с авто-эскалацией: HTTP → headless-браузер при SPA или антибот-защите |
🕸️ crawl | Многостраничный обход: BFS, DFS, sitemap. Соблюдает robots.txt и rate limits |
🧩 extract | Структурированные данные: таблицы, JSON-LD, метаданные, кастомные JSON Schema |
💾 cache | Поиск по всему уже просмотренному: по ключевому слову или семантически, офлайн |
🧲 find_similar | Страницы, похожие на URL или концепцию (3-way fusion) |
🧠 research | Декомпозиция вопроса → параллельные подзапросы → синтез отчёта с цитатами |
🤖 agent | Автономный цикл: план → поиск → fetch → extract → синтез с бюджетом по времени |
🔁 diff | Что изменилось на странице с последнего визита |
⏱️ watch | Мониторинг URL с доставкой изменений в webhook |
Wigolo работает не только через MCP — каждый инструмент доступен напрямую из консоли:
wigolo search "PostgreSQL logical replication" --json
wigolo shell # интерактивный REPL с NDJSON-пайпингом
Как агент получает результаты
Wigolo не возвращает просто ссылки — он даёт агенту доказательства. Каждый результат поиска содержит дословный отрывок с точным байтовым положением в источнике, citation ID для цитирования и оценку достоверности:
{
"results": [{
"title": "Logical replication - PostgreSQL docs",
"url": "https://www.postgresql.org/docs/current/logical-replication.html",
"excerpt": "Logical replication is a method of replicating data objects…",
"citation_id": "src-1",
"source_span": { "start": 1042, "end": 1305 },
"evidence_score": {
"final": 0.86,
"semantic": 0.91,
"lexical": 0.78,
"engine_consensus": 3
}
}],
"freshness_signal": {
"published": "2026-05-12",
"confidence": "high"
}
}
Слабые результаты помечаются как «мусор» внутренним скорером, сбойные движки — репортируются, устаревший кэш — маркируется. Агент всегда знает, на чём стоит.
Архитектура: как это работает внутри
flowchart TD
A["🤖 AI-агент\nMCP-клиент"] -->|MCP over stdio| B["wigolo\n10 инструментов"]
B --> C{Слой инструментов}
C --> D["search · fetch · crawl · extract"]
C --> E["cache · find_similar · research · agent"]
D --> F["Fetch-роутер\nHTTP → TLS → headless browser"]
D --> G["Search\n18 движков → RRF fusion → rerank"]
E --> H[("SQLite\nURL-кэш · embeddings")]
F --> I[Веб]
G --> I
Для повторного интерактивного использования рекомендуется запускать wigolo serve — это держит пул браузеров, embeddings и reranker резидентными между вызовами.
Нужен ли LLM-ключ?
Чтобы оставаться полностью локальным и без ключей, достаточно установить WIGOLO_LLM_PROVIDER=ollama. Gemini рекомендуется, потому что его бесплатный тир более чем достаточен для wigolo.
Инструменты search, fetch, crawl, extract, cache и find_similar работают полностью без ключей. Инструменты research, agent и search format=answer используют LLM для синтеза ответов — здесь рекомендуется бесплатный ключ Gemini.
«Ничего из того, к чему прикасается wigolo, не покидает
~/.wigolo/— и нет счёта, который растёт с тем, насколько активно думает агент.»
Wigolo vs конкуренты
Tavily и Exa требуют API-ключей и оплаты. WebSearch-MCP самохостится и не требует внешнего ключа, но требует запуска собственного Docker-сервиса краулера. Wigolo идёт дальше: он разворачивается одной командой, работает офлайн и объединяет весь стек в одном инструменте.
| Параметр | Wigolo | Tavily | Exa | Firecrawl |
|---|---|---|---|---|
| API-ключ | Не нужен | Обязателен | Обязателен | Опционален |
| Цена | $0/запрос | от $0.005/запрос | от $7/1k запросов | от $16/5k кредитов |
| Локальная работа | ✅ Полностью | ❌ | ❌ | ❌ |
| Число инструментов | 10 | 2 | 3 | 13 |
| Офлайн-кэш | ✅ | ❌ | ❌ | ❌ |
| Автономный агент | ✅ | ❌ | ❌ | ✅ |
Цель wigolo — обеспечить веб-поиск и исследование для агентов на уровне платных сервисов, сохраняя открытый, локальный и бесплатный подход.
Контекст: рынок MCP-серверов в 2026 году
В 2026 году экосистема MCP достаточно велика, чтобы production-ready серверы существовали для большинства распространённых категорий инструментов разработчика. Узкое место теперь не сам протокол — а обнаружение нужного инструмента и выбор между сборкой и поиском готового.
npx wigolo doctor и следите за обновлениями в репозитории.Wigolo оптимизирован для AI-агентов: поддерживает параллельный fan-out нескольких запросов, прозрачное scoring по каждому результату и бюджет-aware вывод. Это делает его особенно ценным для кодинговых агентов, которые задают вопросы не поодиночке, а сериями.
Исходный код и документация доступны на GitHub.