About HTTrack MCP Server
HTTrack MCP Server wraps HTTrack so AI agents can mirror websites and inspect the resulting offline archives. It provides background jobs and tools to browse, read, and search downloaded files.
Key features
- 01Start website mirrors in background
- 02Track mirror job status
- 03Browse archive projects and files
- 04Read supported text files
- 05Search archived content
Use cases
- 01Archive a site for offline review
- 02Find text in a downloaded website
MCP support
Exposes website mirroring and archive catalog, file listing, reading, and search tools to MCP clients over streamable HTTP.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
docker run -i --rm ghcr.io/techventures-studio/httrack-mcp-server:v1.0.3Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
ghcr.io/techventures-studio/httrack-mcp-server:v1.0.3Streamable HTTPTools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEHTTrack MCP Server
A FastMCP (Model Context Protocol) server that wraps the classic HTTrack website copier, so AI agents can mirror websites into a shared archive and then browse, read, and search the downloaded content — all over MCP.
Copyright (C) 2026 Tech Ventures VCC. Licensed under the GNU Affero General Public License v3.0 (see LICENSE).
Why
HTTrack is battle-tested for offline website copying, but it has no scripting API — only a
GUI and a CLI. This server makes it agent-native: an LLM agent can call mirror_site to
start a download in the background, poll mirror_status, and later answer questions from
the archive via catalog, list_files, read_file, and search_files.
Tools
| Tool | Purpose |
|---|---|
mirror_site(url, project, depth, max_rate, filters) | Start a background mirror into the archive (/data/<project>). One active mirror per project — a concurrent request for the same project returns already_running with the live job_id; different projects run in parallel. |
mirror_status(job_id) | Job status (running / done / failed + log tail). Omit to list recent jobs; also accepts the project name. |
catalog() | All projects: short name, short description (auto-derived from each site's <title>/meta description), source URL, status, page/file counts, size. |
list_files(project, subpath) | Directory listing inside a project (name, type, size, modified). |
read_file(project, path, max_bytes) | Read one text file (HTML/JS/CSS/txt/json/md). Refuses binaries; caps content at 256 KB to keep agent context sane. |
search_files(project, query, max_results) | Case-insensitive substring search across a project's text files, capped results. |
Quick start
Prerequisites: Docker.
docker build -t httrack-mcp-server .
docker run -d --name httrack-mcp --restart unless-stopped \
-p 9050:8000 \
-v /path/to/your/archive:/data:rw \
httrack-mcp
The container exposes the MCP server over streamable HTTP at http://<host>:9050/mcp.
Register in an MCP client
Example for MCPHub-style gateways (streamable-http):
{
"httrack": {
"type": "streamable-http",
"url": "http://192.168.1.35:9050/mcp",
"enabled": true,
"description": "HTTrack site mirroring + archive browsing",
"owner": "admin"
}
}
Clients that speak streamable HTTP directly can connect to /mcp with no extra auth
(nobody is authenticated; run this on a trusted network, or put it behind your gateway's
auth). See HELP.md for full usage, examples, and troubleshooting.
Concurrency model
- One
httrackprocess per project, isolated by its own output directory — no shared state between projects, so multiple agents can mirror different sites in parallel. mirror_siteguards against double-mirroring the same project (in-process job table + a/procscan for httrack processes writing to that project directory).
CI
GitHub Actions runs on every PR and push: Python syntax check of server.py,
Dockerfile sanity assertions, and a Docker image build.
License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
If you run a modified version of this server as a network service, AGPL §13 requires you to offer your users the corresponding source of that modified version.
Copyright (C) 2026 Tech Ventures VCC. HTTrack itself is GPL-licensed by Xavier Roche and contributors; this project only shells out to it and is not affiliated with it.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.