home / mcp / mcp file downloader mcp server

MCP File Downloader MCP Server

Model Context Protocol server that enables Claude Desktop to download files from the web with automatic browser fallback for JavaScript-heavy sites

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "abs222222-mcp-file-downloader": {
      "command": "node",
      "args": [
        "C:\\\\path\\\\to\\\\mcp-file-downloader\\\\download-server.js"
      ]
    }
  }
}

You can run an MCP File Downloader server locally to enable direct HTTP file downloads with smart redirects, plus automatic browser fallback for sites that require JavaScript. This server is designed to work with Claude Desktop, letting you fetch datasets, documents, and other files reliably even when simple HTTP requests aren’t enough.

How to use

You run a local MCP File Downloader server and connect Claude Desktop to it. Use it to download files by providing the target URL and optional filename or browser fallback hints. The server first tries a direct HTTP download. If the site uses redirects or requires browser execution, it can automatically switch to a browser-based approach to retrieve the file.

Practical usage patterns include downloading via a simple URL, saving the file with a preferred name, or forcing browser mode for JavaScript-heavy sites. The server supports up to 10 redirects and can auto-name files from the URL or accept a custom name. If a site requires JavaScript to initiate the download, the browser-based fallback will be used automatically.

How to install

Prerequisites: Node.js 18+ and Claude Desktop.

Step 1: Clone the project, then install dependencies.

git clone https://github.com/yourusername/mcp-file-downloader.git
cd mcp-file-downloader

Step 2: Install dependencies.

npm install

Step 3: Configure Claude Desktop to use the MCP server. Add the following MCP entry to your Claude Desktop configuration (Windows example shown; adjust paths for macOS or Linux as needed). This example enables the local Node-based server to run from a fixed path.

{
  "mcpServers": {
    "file-downloader": {
      "command": "node",
      "args": ["C:\\path\\to\\mcp-file-downloader\\download-server.js"]
    }
  }
}

Additional sections

Project structure highlights the MCP server implementation and related files.

Usage in Claude Desktop is described by indicating the URL to download and optional parameters like the target filename or whether to force browser mode. The server will automatically fall back to a browser-based download when needed.

Examples you can try in Claude Desktop include downloading a file from a direct URL, saving it with a custom name, or requesting a browser-based download for complex sites.

Configuration and troubleshooting

Configuration is done via the local MCP server setup and Claude Desktop integration. Ensure you restart Claude Desktop after updating configuration.

If you encounter issues like too many redirects, try forcing browser mode by setting the use_browser option to true or using a command that explicitly requests the browser path.

Verify that Node.js has write permissions to your download directory if downloads are failing.

Notes

This MCP server is designed to work across Windows, macOS, and Linux. It integrates with Claude Desktop to provide seamless file downloading where direct HTTP access may be limited by redirects or JavaScript requirements.

Available tools

smartDownload

Tries a direct HTTP download first, then falls back to a browser-based download when necessary.

redirectHandler

Supports up to 10 redirects, handling complex redirect chains to reach the final file.

playwrightBrowser

Uses Playwright to render JavaScript-heavy sites and obtain files that require browser execution.

filenameResolver

Auto-names downloaded files from the URL or uses a user-specified filename for saving.

MCP File Downloader MCP Server - abs222222/mcp-file-downloader