LABSCO SUMMARY
Batch and depth in one call, scoped to where you pointed it.
Most fetch tools give an assistant one page at a time, so gathering a documentation section becomes a dozen round trips. Taking a list of URLs and a depth in a single call collapses that, and deriving the domain restriction from the URLs themselves removes the usual configuration step while quietly preventing a crawl that escapes onto the wider web. The default depth of 2 is a sensible line: enough to follow a page's own links, not enough to accidentally pull a whole site.
What it is
A web crawler exposed over MCP, built on Colly and written in Go. It takes one URL or a list, follows links to a depth you choose, and returns the extracted content in a form an assistant can use — with crawling restricted to the domains of the URLs you supplied, so a crawl cannot wander off the site you asked about.
What you get
- Concurrent crawling of one or several URLs in a single call, passed as
urls - Depth you control with
max_depth, defaulting to 2 — so a page and its immediate links, unless you say otherwise - Domain restrictions applied automatically from the URLs you provided, with no allowlist to maintain
- Results formatted for a language model to read, rather than raw HTML
- Graceful shutdown and error handling around the crawl, so a failure returns something rather than hanging
Requirements
No account and no key. Go 1.21 or later and Make to build: make deps then make build, which puts the binary in bin/mcp-go-colly; make build-all cross-compiles for Linux, Windows and macOS. The client entry points its command at the built binary — no runtime dependencies beyond it. MIT licensed.
Setup effort
Build from source — git clone https://github.com/bneil/mcp-go-colly.git
USE CASES
Reading a documentation section, not one page of it
Give the section's entry URL and let it follow the links one level down, returning the content together.
Gathering several sources at once
Pass an array of URLs in a single call instead of fetching them one at a time.
Keeping a crawl on the site you meant
Rely on the automatic domain restriction so following links cannot take the crawl somewhere unrelated.
Running a crawler without Node, Python or a browser
Build the single Go binary once with Go and Make, then point your client at it; nothing else runs alongside it.
BEFORE YOU INSTALL
What to know first
Requires
- Go 1.21 or later
- Make
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/bneil/mcp-go-colly.git
cd mcp-go-colly
make deps
make buildMCP Clients
Claude Desktop
{
"mcpServers": {
"web-scraper": {
"command": "<YOUR_PATH>/mcp-go-colly/bin/mcp-go-colly"
}
}
}