ReClip
A self-hosted, open-source video and audio downloader with a clean web UI. Paste links from YouTube, TikTok, Instagram, Twitter/X, and 1000+ other sites — download as MP4 or MP3.
https://github.com/user-attachments/assets/419d3e50-c933-444b-8cab-a9724986ba05
Features
- Download videos from 1000+ supported sites (via yt-dlp)
- MP4 video or MP3 audio extraction
- Quality/resolution picker
- Download precise clips by start/end time without first storing the full source
- Bulk downloads — paste multiple URLs at once
- Automatic URL deduplication
- Clean, responsive UI — no frameworks, no build step
- Native Desktop Apps — zero-install standalone executables for Windows, macOS, and Linux.
- Intelligent Filename Generation — extracts and formats metadata gracefully (
Artist - Track.mp3orChannel - Title.mp4). - Local-first operation — downloads run on the user's own machine and network connection.
- Automated Build Pipeline — GitHub Actions automatically compiles and publishes new executables upon every version tag push.
🚀 Download ReClip App
You don't need to install Python or use the terminal. Download the pre-built standalone executable for your operating system:
- 🪟 Windows: ReClip.exe
- 🍎 macOS: ReClip-macos.dmg
- 🐧 Linux: ReClip
Note: The native apps contain a bundled server and PyWebView browser. Simply open the app and it will launch right in its own native window!
🛠️ Run from Source (Terminal)
git clone https://github.com/yagyaanshK/reclip.git
cd reclip
On Windows:
Double-click start_windows.bat.
On Mac / Linux:
./reclip.sh
Open http://localhost:8899 in your browser.
Build Executables Locally
To manually compile ReClip into a standalone executable:
- Windows: Run
build_windows.bat-> Output indist/ - Mac / Linux: Run
./build_unix.sh-> Output indist/
Or with Docker:
docker build -t reclip . && docker run -p 8899:8899 reclip
Usage
- Paste one or more video URLs into the input box
- Choose MP4 (video) or MP3 (audio)
- Click Fetch to load video info and thumbnails
- Select quality/resolution if available
- Optionally enable Clip and enter start/end times as
SS,MM:SS, orHH:MM:SS.000 - Click Download on individual videos, or Download All
Command-Line Interface
ReClip also exposes a structured local CLI for shell scripts and AI agents. Install it in a Python 3.10+ environment with uv:
uv tool install reclip-mcp
Then run:
reclip inspect "https://example.com/media" --json
reclip download "https://example.com/media" --format mp4 --quality 1080p --output downloads --json
reclip clip "https://example.com/media" --start 01:20:15.500 --end 01:25:00 --format mp3 --output downloads --json
reclip sites --json
All JSON responses contain an ok field. Failures include a stable machine-readable error code and a human-readable message. Downloads occur locally and return the absolute output path, filename, byte size, format, source URL, and clip range.
AI Agent Integration (MCP)
Configure an MCP host to install and start ReClip over stdio without cloning the repository:
{
"mcpServers": {
"reclip": {
"command": "uvx",
"args": ["reclip-mcp"],
"env": {
"RECLIP_MCP_DOWNLOAD_DIR": "/absolute/path/to/downloads"
}
}
}
}
Use the absolute path to uvx if the MCP host does not inherit your shell PATH. The server exposes inspect_media, download_media, download_clip, and list_supported_sites. Download tools require explicit user authorization and can write only to RECLIP_MCP_DOWNLOAD_DIR, which defaults to ~/Downloads/ReClip.
For development from a checkout, run python -m pip install . and configure the host to execute python -m reclip_mcp.
Supported Sites
Anything yt-dlp supports, including:
YouTube, TikTok, Instagram, Twitter/X, Reddit, Facebook, Vimeo, Twitch, Dailymotion, SoundCloud, Loom, Streamable, Pinterest, Tumblr, Threads, LinkedIn, and many more.
Stack
- Backend: Python + Flask
- Frontend: Vanilla HTML/CSS/JS (single file, no build step)
- Download engine: yt-dlp + ffmpeg
- Dependencies:
flask,yt-dlp,yt-dlp-ejs,pycryptodomex,pywebview,pyinstaller,imageio-ffmpeg
Disclaimer
This tool is intended for personal use only. Please respect copyright laws and the terms of service of the platforms you download from. The developers are not responsible for any misuse of this tool.
License
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file reclip_mcp-0.1.2.tar.gz.
File metadata
- Download URL: reclip_mcp-0.1.2.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
036141ede029f8d25fa04447c7cc82f13ece46c8982044224889cb5868a58d70
|
|
| MD5 |
12ce3593ae37072edefc065bbc766bc4
|
|
| BLAKE2b-256 |
8f070e3d513b0adba8987a95c2e280a6a48302a3700c7e9f09565f68644dd9aa
|
Provenance
The following attestation bundles were made for reclip_mcp-0.1.2.tar.gz:
Publisher:
release-python.yml on yagyaanshK/reclip
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
reclip_mcp-0.1.2.tar.gz -
Subject digest:
036141ede029f8d25fa04447c7cc82f13ece46c8982044224889cb5868a58d70 - Sigstore transparency entry: 2753978057
- Sigstore integration time:
-
Permalink:
yagyaanshK/reclip@7185e1ecb47349f866bf1a9a05651326fbd9fad0 -
Branch / Tag:
refs/tags/mcp-v0.1.2 - Owner: https://github.com/yagyaanshK
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-python.yml@7185e1ecb47349f866bf1a9a05651326fbd9fad0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file reclip_mcp-0.1.2-py3-none-any.whl.
File metadata
- Download URL: reclip_mcp-0.1.2-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e286bc176929d06fc3fa61d98d5d54b9fc487b411ca5355b05564ff8b387ed24
|
|
| MD5 |
84b9c5838f029acbbdf4b8f6f95ec179
|
|
| BLAKE2b-256 |
445ef43e9e94855f23087086d33314d67105dddb1ad460ad7ee859c351dcafa6
|
Provenance
The following attestation bundles were made for reclip_mcp-0.1.2-py3-none-any.whl:
Publisher:
release-python.yml on yagyaanshK/reclip
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
reclip_mcp-0.1.2-py3-none-any.whl -
Subject digest:
e286bc176929d06fc3fa61d98d5d54b9fc487b411ca5355b05564ff8b387ed24 - Sigstore transparency entry: 2753978061
- Sigstore integration time:
-
Permalink:
yagyaanshK/reclip@7185e1ecb47349f866bf1a9a05651326fbd9fad0 -
Branch / Tag:
refs/tags/mcp-v0.1.2 - Owner: https://github.com/yagyaanshK
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-python.yml@7185e1ecb47349f866bf1a9a05651326fbd9fad0 -
Trigger Event:
push
-
Statement type: