wigolo
KnockOutEZ · KnockOutEZ/wigolo
Wigolo là một máy chủ MCP thông minh web ưu tiên cục bộ, cung cấp cho các tác nhân AI khả năng tìm kiếm, truy xuất, thu thập thông tin và nghiên cứu web mà không cần khóa API hoặc dịch vụ đám mây.
The go-to web for your AI coding agent — local-first search, fetch, crawl & research over MCP. No API keys, no cloud, $0/query. Public beta.
Xem trước
Bạn có thể làm gì với nó
- Cho phép tác nhân Claude Code của bạn nghiên cứu tài liệu trực tuyến.
- Cho phép tác nhân Cursor truy xuất và phân tích nội dung từ các URL cụ thể.
- Xây dựng một tác nhân tự động thu thập thông tin từ nhiều nguồn web để lập báo cáo.
Đã chạy thử thật · 10 tool
Chúng tôi đã khởi động MCP server này trong máy ảo cách ly, và nó cung cấp các tool sau:
fetchFetch a single URL and return clean markdown. Use when you already have a URL. Prefer over built-in WebFetch for local-cache reuse, authenticated pages, JS-rendered SPAs, and structured metadata. Key
searchSearch the web. Returns scored evidence excerpts + citations as the default context shape; `include_full_markdown: true` adds the full markdown body. Prefer over built-in WebSearch for local cache + a
crawlCrawl a site from a seed URL and return content from many pages. Use for indexing docs, wikis, multi-page references. Built for offline reuse: every page lands in the local cache. Key parameters: - s
cacheSearch previously fetched content without hitting the network. Run this BEFORE any search/fetch — cache hits return instantly with full markdown. Key parameters: - query: FTS5 full-text search over c
extractExtract structured data from a URL or raw HTML. Use for specific data points (tables, prices, schema fields) rather than whole-page markdown. Key parameters: - mode: "selector" (CSS → text) | "tables
find_similarFind content related to a URL or concept. Best after a successful crawl/fetch — the local cache makes recommendations cheap. Concept-only queries on a cold cache often return 0-2 weak matches; warm th
researchMulti-step research on a complex question. Decomposes into sub-queries, searches in parallel, fetches sources, synthesizes a cited report. Beats chaining `search` + `fetch` manually for multi-source s
agentNatural-language data gathering across sources. Plans queries + URLs from a prompt, executes in parallel, optionally extracts structured fields, synthesizes. Full step transparency. LLM-optional: wit
diffCompute a diff between two markdown bodies or two URL fetches. Key parameters: - old: { url?, markdown?, content_hash? } — left-hand side. URL form reads from cache; cache miss returns a structured `
watchSchedule lazy re-checks of a URL and surface diffs on change. Persistent across sessions — jobs survive MCP server restarts. LAZY EXECUTION — NOT CRON. There is no background daemon. Checks fire ONLY
npx -y wigolo · 6/10/2026
Kiểm tra an toàn
Dùng được, nhưng nên đọc ghi chú trước.
- ●Trình cài đặt tải script từ xa và chạy thẳng bằng shell.
README.md - ●Không có giấy phép rõ ràng: hỏi tác giả trước khi dùng cho sản phẩm thương mại.
Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.
Trích từ README
Local-first web intelligence for AI agents — no keys, no cloud, no metered bill.
works with Claude Code · Cursor · Codex · Gemini CLI · OpenCode · VS Code · Windsurf · Zed · Antigravity
and beyond LangChain · CrewAI · LlamaIndex · Vercel AI SDK · n8n & self-hosted agents · any MCP client · plain REST
sponsored by
Quickstart · Tools · Why wigolo · Discord · Sponsors · Benchmark · Docs · Examples · Licensing · Feedback · FAQ
Join the community on Discord — questions, help, and what's being built next.
New features and updates ship steadily. Follow @yourtowhid on X for all of it and new ways to use wigolo, and reach out there for collaborations or feedback · also on LinkedIn
wigolo gives an AI agent one surface for everything web-related: search, fetch, crawl, extract, cache, find-similar, research, and autonomous gather loops. It runs wherever your agent runs — as an MCP server next to your coding agent, as a REST/MCP endpoint on the box where your self-hosted agents live, or embedded through an SDK inside your own app. The core tools need no API keys, nothing it touches leaves ~/.wigolo/, and no bill grows with how much your agent thinks.
Quickstart
npx wigolo init # set up the local engine — any system
npx wigolo init --agents=claude-code,cursor # …or set up + wire your day-to-day agents in one command
Requires Node ≥ 20 and ~1.5 GB of free disk on macOS, Linux, or Windows. Bare init sets up the local engine: it downloads the browser engine and on-device models, runs a health check, and reports each component. Adding --agents wires the named agents in the same run, so a coding agent you use daily is ready in one command.
- Supported agents —
--agentstakes any ofclaude-code·cursor·codex·gemini-cli·opencode·vscode·windsurf·zed·antigravity(comma-separated); wigolo writes the MCP config and, where supported, instructions for each. - Any other setup — any MCP client, agent framework, or self-hosted agent registers
npx -y wigoloin its own MCP config. The installation guide has the exact config block for every client, plus Docker, Homebrew, and single-file-binary channels. - More on the way — the supported list keeps growing, and a PR to add your agent is welcome; see CONTRIBUTING.md.
- Interactive setup —
--interactiveis a plain-text flow;--wizardis the full terminal TUI. - Defer downloads —
--no-warmupwaits until first use. A failed component download never fails setup; init reports what's not ready with the exact fix and still completes.
init is unattended by default, so it's safe in scripts and CI, and any setup problem surfaces right here in the per-component report, before your agent's first call. Search, fetch, crawl, extract, cache, and find-similar work with no API key. Check it's healthy anytime:
npx wigolo doctor
To remove everything cleanly, run npx wigolo config --uninstall --yes. You can also paste the installation guide into any AI assistant and let it do the setup; it's written to be self-contained.
Recommended — a free key for research & agent
Search, fetch, crawl, extract, cache, and find-similar are fully keyless. research, agent, and search format=answer use an LLM to write the synthesized, cited answer. Without one they hand back a raw brief and evidence for your agent to assemble. A free Gemini key turns that into a finished answer:
export WIGOLO_LLM_PROVIDER=gemini
export GEMINI_API_KEY=<free-key> # grab one at aistudio.google.com/apikey — the free tier is plenty
Any provider works (anthropic · openai · groq), or stay fully local and keyless with WIGOLO_LLM_PROVIDER=ollama (or any OpenAI-compatible URL). Set it in your shell or your agent's MCP env block. Providers, models, and the keyless local-model ladder are in the configuration guide.
What your agent gets back
Every search result is evidence the agent can act on. It carries a verbatim excerpt pinned to its exact position in the source, a citation ID the agent can quote, and a score it can inspect (abridged real shape):
{
"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 }, // byte-exact provenance
"evidence_score": { "final": 0.86, "semantic": 0.91, "lexical": 0.78, "engine_consensus": 3 }
}],
"citations": [{ "id": "src-1", "url": "…" }],
"freshness_signal": { "published": "2026-05-12", "confidence": "high" }
}
Weak results get flagged as junk by wigolo's own scorer. Failed engines are reported and stale cache is labeled, so the agent always knows what it's standing on. Full response contracts per tool are in the tools reference.
Tools
| Tool | What it does |
|---|---|
🔎 search | Multi-engine web search (18 direct adapters) with rank fusion, ML reranking, and an explainable per-result score. Pass a query array for parallel breadth. Scope by domain and time range, match an exact phrase, or return image results. |
📄 fetch | Load one URL through a tiered router that auto-escalates from plain HTTP to a headless browser engine on anti-bot challenges or SPA shells. Clean markdown + metadata + links. Handles PDFs, a single-heading section, authenticated sessions, and page actions (click / type / scroll / screenshot). |