Image Downloader
@cced3000
一个支持图片下载和处理的 MCP (Model Context Protocol) 服务器,具有进度跟踪、批量下载和图片处理功能。
Overview
What is Image Downloader?
Image Downloader is an MCP (Model Context Protocol) server for downloading and processing images. It supports single and batch downloads with real-time progress tracking, image format conversion (JPEG, PNG, WebP), resizing, compression, and proxy configuration. It is intended for developers and users who need programmatic image downloading via MCP-compatible clients like Cursor or Claude Desktop.
How to use Image Downloader?
Install via npx (npx mcp-image-downloader), npm global install, or local clone. Configure the server in your MCP client’s JSON settings (e.g., .cursor/mcp.json or claude_desktop_config.json), optionally setting environment variables like DEFAULT_SAVE_PATH, DEFAULT_FORMAT, HTTP_PROXY, etc. Then invoke the tools download_image (single) or download_images_batch (batch) with parameters such as URL, format, compression, max dimensions, and proxy.
Key features of Image Downloader
- Single image download with optional processing
- Batch download of multiple images with concurrent control
- Real-time progress tracking (percentage, speed, ETA)
- Image format conversion to JPEG, PNG, WebP, or original
- Image resizing by max width and height
- Image compression
- Proxy support (HTTP, HTTPS, SOCKS5, with authentication)
- Configuration via environment variables and MCP client settings
Use cases of Image Downloader
- Download a single image and convert it to WebP with compression
- Batch download multiple images while resizing them to a maximum width of 1920px
- Download images from behind a corporate firewall using an HTTP proxy
- Automate image collection for a blog or data pipeline with concurrency control
- Process images on-the-fly (format, size, compression) during download
FAQ from Image Downloader
What runtime does Image Downloader require?
Image Downloader is a Node.js package. You need Node.js and npm installed to run it via npx or global installation.
How do I configure proxy for downloads?
Proxy can be set globally via the HTTP_PROXY and HTTPS_PROXY environment variables, or per-request using the proxy parameter in tool calls. Supported formats include HTTP, HTTPS, SOCKS5, and authenticated proxies.
What image formats are supported for conversion?
The server can convert to JPEG, PNG, WebP, or keep the original format. The default is original.
Can I limit download concurrency?
Yes. Set the DEFAULT_CONCURRENCY environment variable (default 3, range 1–10) or pass the concurrency parameter in download_images_batch.
Where are downloaded images saved?
By default, images are saved to ./downloads relative to the working directory. You can change this with the DEFAULT_SAVE_PATH environment variable or by specifying savePath in the tool call.