website downloader (windows).com
website downloader (windows).com logo

Website Downloader (Windows)

Windows-compatible website downloader for efficient web content retrieval and storage, leveraging asynchronous processin...

Created byApr 23, 2025

MCP Website Downloader

Simple MCP server for downloading documentation websites and preparing them for RAG indexing.

Features

  • Downloads complete documentation sites, well big chunks anyway.
  • Maintains link structure and navigation, not really. lol
  • Downloads and organizes assets (CSS, JS, images), but isn't really AI friendly and it all probably needs some kind of parsing or vectorizing into a db or something.
  • Creates clean index for RAG systems, currently seems to make an index in each folder, not even looked at it.
  • Simple single-purpose MCP interface, yup.

Installation

Fork and download, cd to the repository.
Put this in your claude_desktop_config.json with your own paths:
![alt text]({52E8102D-678C-44FE-9B0E-491483808EB6}.png)

Other Usage you don't need to worry about and may be hallucinatory lol:

  1. Start the server:
  1. Use through Claude Desktop or other MCP clients:

Output Structure

Development

The server follows standard MCP architecture:

Components

  • `server.py`: Main MCP server implementation that handles tool registration and requests
  • `core.py`: Core website downloading functionality with proper asset handling
  • `utils.py`: Helper utilities for file handling and URL processing

Design Principles

  1. Single Responsibility - Each module has one clear purpose - Server handles MCP interface - Core handles downloading - Utils handles common operations
  1. Clean Structure - Maintains original site structure - Organizes assets by type - Creates clear index for RAG systems
  1. Robust Operation - Proper error handling - Reasonable depth limits - Asset download verification - Clean URL/path processing

RAG Index

The `rag_index.json` file contains:

Contributing

  1. Fork the repository
  1. Create a feature branch
  1. Make your changes
  1. Submit a pull request

License

MIT License - See LICENSE file

Error Handling

The server handles common issues:
  • Invalid URLs
  • Network errors
  • Asset download failures
  • Malformed HTML
  • Deep recursion
  • File system errors
Error responses follow the format:
Success responses: