---
title: "Wigolo MCP: Local Web Search and Crawling With No API Keys"
url: "https://mcpshelf.co/servers/wigolo"
description: "Wigolo gives an agent web search, page fetching, crawling and extraction that run on your machine with no API keys. Setup, tools, disk space and licence."
updated: "2026-10-27"
site: "MCP Shelf"
---

# Wigolo

> Search, fetch, crawl and extract the web locally, with no keys or metered bill.

## At a glance

Wigolo bundles the web jobs an agent keeps needing into one local server: search across many engines with its own reranking, page fetching that falls back to a headless browser when a site needs one, crawling, structured extraction, a searchable cache of everything it has read, and change tracking for pages you watch. Search, fetch, crawl and extract need no account or key.

The research and agent tools write a finished, cited answer only when you give them a model to use, such as a free Gemini key or a local Ollama model. Without one they hand the evidence back for your own assistant to write up. The first setup downloads a browser engine and small on-device models, about 1.5 GB in all.

|  |  |
| --- | --- |
| Made by | KnockOutEZ (Towhid), open source with commercial licences available |
| GitHub | https://github.com/KnockOutEZ/wigolo |
| Licence | AGPL-3.0-only |
| npm package | [wigolo](https://www.npmjs.com/package/wigolo) 0.3.1 (26 Oct 2026) |
| GitHub stars | 5.5K |
| Downloads | 1.1K a week |
| Last commit | 26 Oct 2026 |
| Tools | 10 |
| Runs on | Your computer |
| Install check | Started in our test |
| Category | [Browser and web data](https://mcpshelf.co/categories/browser-and-web) |

**Our check:** We ran this exact config on 27 Oct 2026: it started and answered with 10 tools.

## Tools

We listed 10 tools on 27 Oct 2026. 7 only read; the rest can change things or run commands.

| Tool | Kind | What it is for |
| --- | --- | --- |
| `fetch` | changes | Turns one URL into clean markdown, switching to a headless browser when a page needs JavaScript or blocks plain requests. Handles PDFs, single sections and simple page actions. |
| `search` | reads | Searches the web across many engines at once, reranks the results and returns scored excerpts with citations. Takes several queries in parallel, domain filters and date ranges. |
| `crawl` | reads | Follows links from a starting page, or reads a sitemap, and returns many pages at once while respecting robots.txt and rate limits. |
| `cache` | changes | Searches everything already fetched, with no network call, and can clear the cache or check whether a page changed. |
| `extract` | reads | Pulls structured data out of a page: tables, metadata, JSON-LD, common schemas or a JSON Schema of your own. |
| `find_similar` | reads | Finds pages related to a URL or an idea, using the local cache plus a live search. |
| `research` | reads | Splits a question into smaller searches, reads the sources and returns a cited report, or the evidence alone if no model is set up. |
| `agent` | reads | Plans and runs a whole gathering job from a plain-language request, with a step log and a time budget. |
| `diff` | reads | Shows what changed between two versions of a page or two pieces of markdown. |
| `watch` | changes | Keeps an eye on a URL and reports changes, optionally to a webhook. Watches survive restarts. |

### How clearly it describes its tools

10 of 10 tools have a description and 10 of 10 say whether they change things. The tool list takes at least ~3,700 tokens of context. Every tool says whether it only reads or can change things, so a client can ask before the risky ones.

## Set it up

1. Run npx wigolo init once. It downloads the browser engine and models and checks each part. Add --agents=claude-code,cursor to write those clients' configs at the same time.
2. Add the config below to any other client.
3. Optional: set WIGOLO_LLM_PROVIDER and a matching key in env so the research and agent tools can write their own answers.

### Claude Desktop

Where: claude_desktop_config.json (Settings → Developer → Edit Config)

```json
{
  "mcpServers": {
    "wigolo": {
      "command": "npx",
      "args": [
        "-y",
        "wigolo"
      ]
    }
  }
}
```

### Claude Code

Where: Your terminal, in the project folder

```bash
claude mcp add-json wigolo '{"command":"npx","args":["-y","wigolo"]}'
```

### Cursor

Where: ~/.cursor/mcp.json, or .cursor/mcp.json in a project

```json
{
  "mcpServers": {
    "wigolo": {
      "command": "npx",
      "args": [
        "-y",
        "wigolo"
      ]
    }
  }
}
```

### VS Code

Where: .vscode/mcp.json in your project

```json
{
  "servers": {
    "wigolo": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "wigolo"
      ]
    }
  }
}
```

### Windsurf

Where: ~/.codeium/windsurf/mcp_config.json

```json
{
  "mcpServers": {
    "wigolo": {
      "command": "npx",
      "args": [
        "-y",
        "wigolo"
      ]
    }
  }
}
```

### ChatGPT

Where: Not supported

ChatGPT only connects to remote servers by URL. This one runs on your computer, so use Claude, Cursor or VS Code.

Run npx wigolo doctor if a tool reports a missing component. It names the part and the fix.

## Settings

| Setting | Kind | Required | What it does |
| --- | --- | --- | --- |
| `WIGOLO_LLM_PROVIDER` | env | no | Which model writes the research and agent answers: gemini, anthropic, openai, groq, or ollama to stay local. Without it those tools return evidence only. Example: `gemini` |
| `GEMINI_API_KEY` | env | no | The key for the provider you chose. Wigolo suggests a free Gemini key; other providers use their usual key variable. |
| `init --agents` | flag | no | Sets up the local engine and writes MCP configs for the listed agents in one go. Example: `npx wigolo init --agents=claude-code,cursor` |
| `init --no-warmup` | flag | no | Skips the big downloads until the first call that needs them. |
| `doctor` | flag | no | Checks each component and names the fix for anything missing. Example: `npx wigolo doctor` |

## What it can touch

**It can read**

- Public web pages and search engines
- Pages behind a login, if you give it a browser session to use

**It can change**

- Its own cache and models on your disk
- Webhooks you point watch at

**Safer setup:** Nothing leaves your machine except the web requests themselves, unless you set an LLM provider, which then sees the gathered text. Use Ollama to keep that local too.

## Before you start

- Node.js 22 or newer
- About 1.5 GB of free disk for the browser engine and models

## Good for

- Web research in a coding agent without paying for a search API
- Crawling a docs site and pulling out tables or JSON-LD
- Watching a page for changes

## If it does not work

**A tool reports that a component is not ready**
Run npx wigolo doctor. Setup never fails on a bad download; it reports what is missing and how to fix it.

**research returns a brief instead of an answer**
That is the keyless behaviour. Set WIGOLO_LLM_PROVIDER and a key, or let your own assistant write the answer from the brief.

**Setup runs out of disk**
It needs about 1.5 GB for the browser engine and models. Free some space, or run init with --no-warmup to delay the downloads.

**You want to remove it**
npx wigolo config --uninstall --yes removes everything it installed.

## Similar servers

| Server | Tools | Runs on | Stars |
| --- | --- | --- | --- |
| [Perplexity MCP](https://mcpshelf.co/servers/perplexity) | 4 | Your computer or hosted | 2.6K |
| [Tavily MCP](https://mcpshelf.co/servers/tavily) | 5 | Your computer or hosted | 2.5K |
| [DuckDuckGo Search MCP](https://mcpshelf.co/servers/duckduckgo) | 3 | Your computer | 1.6K |
| [Brave Search MCP](https://mcpshelf.co/servers/brave-search) | 8 | Your computer | 1.5K |

## Questions

### Is it really free?

Yes. The heavy parts run on your hardware, so there is no metered bill. It is AGPL-3.0; companies building products on it are asked to buy a commercial licence or sponsor the project.

### How does it compare with Exa, Tavily or Firecrawl?

Those are hosted services with API keys and per-request pricing. Wigolo does similar jobs locally, at the cost of a large first download and your own CPU.

### Does it work outside MCP?

Yes. Every tool also runs from the command line, over a REST API and through SDKs.

### Is it stable?

The project calls itself a public beta. Releases come often, so pin a version for anything you depend on.

Full docs on GitHub: https://github.com/KnockOutEZ/wigolo

---

From [MCP Shelf](https://mcpshelf.co/): A short shelf of MCP servers that are worth installing. Index for agents: https://mcpshelf.co/llms.txt

