chrome-downloader
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@chrome-downloader 帮我用 Chrome 这个链接的数据集下载下来,完成后告诉我保存路径"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
chrome-downloader 🚀
把下载交给 Chrome 浏览器做,让程序与 AI Agent 当指挥官。
100% 流量走浏览器网络栈(自动继承 Cookie、登录态、系统代理与加速器),免人工手动开服,支持命令行 CLI 与标准 MCP 协议。
✨ 核心特性
🌐 100% 走 Chrome 原生内核:所有文件字节完全由
chrome.downloads发起。自动带入浏览器里的登录 Cookie、网页会话、专属网络代理与下载加速器。⚡ 零配置、免手动开服:不需要在后台常驻服务。命令行工具或 AI Agent 发起请求时,后台守护进程 1 秒内自动静默拉起,无需使用者人工管理。
🤖 专为 AI Agent 打造:原生支持 Model Context Protocol (MCP) 双时代协议,Claude Code、Cursor、Paseo 等大模型一句话即可调度下载。
🛡️ 纯本地回环与零外网偷跑:Python 桥接服务仅负责收发调度指令,绝不经过本机网卡直接下载文件;仅监听本地
127.0.0.1端口,结合 TOFU 握手密钥保护。📦 零强制外部依赖:Python 端核心库完全基于标准库实现(内置 RFC 6455 WebSocket 回退),无需繁琐装包,开箱即用。
Related MCP server: byob
🛠️ 两步快速开始
1. 安装 Chrome 扩展插件
方式 A(Chrome 应用商店):直接在 Chrome 网上应用店搜索
chrome-dl-bridge,点击 「添加到 Chrome」。方式 B(开发者模式本地加载):
浏览器打开
chrome://extensions/并开启右上角 「开发者模式」。点击 「加载已解压的扩展程序」,选中本项目源码中的
src/chrome_downloader/extension目录即可。
2. 安装 Python 控制端
在你的终端执行:
pip install chrome-downloader
📖 使用指南
-------
### 1\. 终端命令行使用(CLI)
**完全不需要提前启动后台!** 直接敲命令,后台服务自动随需启动:
```bash
# 提交下载并等待完成(自动打印落盘路径与 SHA256 校验和)
chrome-dl download "https://example.com/data.zip" --wait
# 查看所有正在进行的任务与实时下载网速
chrome-dl progress
# 任务控制
chrome-dl pause <任务号> # 暂停
chrome-dl resume <任务号> # 继续
chrome-dl cancel <任务号> # 取消并清理未完成文件
# 查看服务与插件连接健康状态
chrome-dl health文件保存在哪?
默认保存在你 Chrome 浏览器配置的下载目录下的chrome-dl/文件夹中。
2. AI Agent 智能体调用(MCP 协议接入)
本项目原生支持 Model Context Protocol (MCP)。只需在你的 AI 客户端配置中添加:
接入 Claude Desktop / Claude Code
在 claude_desktop_config.json 中配置:
{
"mcpServers": {
"chrome-downloader": {
"command": "chrome-dl-mcp"
}
}
}接入 Cursor / Paseo / 其它 Agent
直接配置命令为 chrome-dl-mcp 即可。
接入后效果:
你只需对 AI 说:
“帮我用 Chrome 插件把这个链接的数据集下载下来并告诉我保存路径。”
AI 将自动调用 download_file 原生工具完成调度,全程无需人工干预!
3. Python 脚本中调用(SDK)
如果你要在自己的 Python 脚本或自动化流水线中使用:
from chrome_downloader.client import Client
# 自动定位本地端点并连接(免配端口与密钥)
client = Client()
# 提交下载任务
job_ids = client.download(["https://example.com/sample.csv"])
print("任务已提交:", job_ids)
# 阻塞等待下载完成
result = client.wait(job_ids)
print("下载完成:", result)🔒 安全与设计哲学
流量零越界(Zero-Egress Guard): 桥接程序和控制端在架构级别被限制为指令通道,数据帧限制在 8192 字节以内,从物理上阻止通过 Python 脚本直连外网下载文件,确保流量合规。
信任初建(TOFU 机制): 扩展程序首次与本地桥连接时生成 32 字节高强度配对密钥,拒绝外部未授权来源劫持控制。
资源友好: 扩展基于 Chrome Manifest V3 标准开发,空闲时自动进入休眠状态,不占用系统 CPU 与多余内存。
📄 开源许可证
本项目基于 MIT License 开源发布,欢迎自由使用、集成与贡献代码。
Available Tools
8 toolschrome_download提交下载(字节由 Chrome 取)A
提交一个或一批 URL 给浏览器下载。服务端不取任何字节,只把任务交给扩展。注意:插件冷启动最长约 30 秒才醒(官方定时器下限),所以提交后进度不立刻动是正常的;要等结果请带 wait=true 或改用 chrome_download_wait。
Inputs: urls (required), wait, sha256, filename, +2 more.
chrome_download_cancel取消B
取消一个任务(不可逆;要重下请新提交)。插件冷启动最长约 30 秒。
Inputs: jobId (required), stateDir.
chrome_download_list任务列表ARead-onlyIdempotent
列出账本里的下载任务(含状态/进度/字节数)。账本很大时本工具会截断到单行 8192 字节以内并标 truncated=true,届时请用 jobId 精确查(chrome_download_progress)。插件冷启动最长约 30 秒。
Inputs: stateDir, includeTerminal.
chrome_download_pause暂停B
暂停一个正在下的任务。插件冷启动最长约 30 秒;暂停是发给扩展的指令,扩展睡着时这条会排队到它醒来。
Inputs: jobId (required), stateDir.
chrome_download_progress单个任务进度ARead-onlyIdempotent
看一个 jobId 的实时进度与网速。插件冷启动最长约 30 秒,刚提交的任务数字不动属正常,别重复提交。
Inputs: jobId (required), stateDir.
chrome_download_resume继续B
继续一个被暂停/中断的任务(能续传则 Range 续传,不能则整单重头下,重头下会标 restarted=true)。插件冷启动最长约 30 秒。
Inputs: jobId (required), stateDir.
chrome_download_status桥与扩展状态ARead-onlyIdempotent
查本机下载桥是否可用、扩展有没有连上、出站熔断状态。排查第一步就敲它。插件冷启动最长约 30 秒(Chrome 扩展后台定时器官方下限),任务没动静先看这里的 extensionConnected。
Inputs: stateDir.
chrome_download_wait等一批任务到终态ARead-onlyIdempotent
阻塞等到指定 jobId 全部进入终态(COMPLETE/FAILED/CANCELLED)或超时。超时上限 600 秒;插件冷启动最长约 30 秒,把 timeout 压太小会误判成没下完。
Inputs: jobIds, stateDir, timeout_sec.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 8 tools
Each tool has a distinct role: status checks bridge/extension health, list enumerates tasks, download submits URLs, progress reports one job, wait blocks until terminal state, and pause/resume/cancel control a specific job. The boundaries are clear and descriptions help reinforce them, so misselection is unlikely.
All tools use snake_case with a consistent chrome_download_ prefix, and suffixes clearly indicate the operation (status, list, progress, wait, pause, resume, cancel). The base chrome_download is the submit action, which fits the same predictable pattern.
Eight tools are well-scoped for a browser download bridge, covering health, submission, monitoring, waiting, and lifecycle control without redundant or missing operations. The count is neither bloated nor too thin for the domain.
The core download lifecycle is well covered: submit, list, inspect progress, wait, pause, resume, cancel, and check bridge health. Minor gaps exist around ledger cleanup or bulk operations, but agents can work around those for typical use.
Maintenance
Related MCP Connectors
Official Browserless MCP server: browser automation, scraping, screenshots and PDFs for AI agents.
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
Browz hosted MCP (free public beta): let an AI app drive your own Browz browser profiles from anywhere. Connect https://mcp.gobrowz.com/mcp and sign in with your Browz account (OAuth) or an agent token. Each call is relayed to the Browz app on your computer, which must be online with Remote control on and have a hardware security chip (Mac Secure Enclave or TPM 2.0). 17 tools: profiles, tabs, navigate, snapshot, act, wait, screenshot. Cookies, downloads and stored sign-ins stay on your computer.
Web scraping, browser automation, screenshots and AI data extraction for AI agents via MCP.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables local agents to discover and download videos from current browser pages, manage download tasks, and retrieve progress and results via MCP.MIT
- AlicenseNot gradedqualityAmaintenanceA local MCP server that lets AI agents drive the real, already-logged-in Chrome browser through a companion extension, navigating tabs, clicking, typing, reading pages, filling forms, taking screenshots, and inspecting cookies, storage, console and network traffic. It keeps all communication on the local machine, with no remote-debugging port to expose and no separate headless browser or manual cookie copying to set up.1 npmISC
- AlicenseNot gradedqualityAmaintenanceA local MCP server that lets AI assistants drive your real, already-logged-in Chrome through a browser extension, so agents can read, click, type, navigate, screenshot, inspect network traffic, and manage cookies or storage on pages that require existing sessions. It works without opening a remote-debugging port and keeps all communication on your machine.1 npmISC
- AlicenseNot gradedqualityAmaintenanceA local MCP server that lets AI coding tools drive the real Chrome browser you already have open, so agents can read logged-in pages, click, fill forms, take screenshots, and inspect tabs, cookies, and network traffic. All communication stays on your machine, with no debugging port or manual cookie copying required.1 npmISC