Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
作者提供的说明(英文原文)
LionScraper Python: MCP stdio + CLI + HTTP API bridging AI to LionScraper browser extension.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"lionscraper-python": {
"command": "uvx",
"args": [
"lionscraper"
]
}
}
}在终端中运行这条命令
claude mcp add lionscraper-python -- uvx lionscraper粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"lionscraper-python": {
"command": "uvx",
"args": [
"lionscraper"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"lionscraper-python": {
"type": "stdio",
"command": "uvx",
"args": [
"lionscraper"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 dowant 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.0.6)于7个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Browser Use, Chrome DevTools MCP, MCP Server Browser
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
MCP server for Chrome DevTools
MCP server for browser use access
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
lionscraperLionScraper is a browser extension that can collect lists, articles, links, images, and more from web pages. This PyPI package provides the companion bridge to that extension in three ways:
lionscraper-mcp): connect your AI app (e.g. Cursor) so the model can call scraping tools in chat.lionscraper): run daemon, scrape, and ping from a terminal over the same local HTTP/WebSocket port as the extension./v1/...) when the daemon is running—useful for scripts, services, or any HTTP client without MCP or the CLI front-end.The real scraping logic runs in the extension; this package connects and forwards.
PATH on Windows if the installer offers it).curl, fetch, or any HTTP client against http://127.0.0.1:$PORT (see HTTP API (local REST) below).This package uses aiohttp for outbound HTTP and WebSocket probes to the daemon. When Chrome/Edge are not detected and the extension is not connected, ping / scrape* can use a server-side HTTP fallback (no in-page JS).
This package is published on PyPI as [lionscraper](https://pypi.org/project/lionscraper/).
pip install -U lionscraper
You may use a virtual environment (recommended) or pip install -U --user lionscraper if you prefer not to install into the system interpreter.
You get two commands; together they support three integration styles (MCP, CLI, HTTP API):
| Command | Role |
|---|---|
| `lionscraper-mcp` | Thin MCP server (stdio) for AI apps |
| `lionscraper` | CLI: daemon, stop, scrape, ping, … (also runs the process that serves the HTTP API) |
If lionscraper-mcp is not on your PATH after install, use the full path to the script (e.g. under your venv’s Scripts/ or bin/), or the `python -m lionscraper` form below in MCP (still requires a normal pip install -U lionscraper).
Examples assume `lionscraper-mcp` is on your PATH (UIs differ). In MCP JSON, every `env` value is a string.
Minimal config (omit env for built-in defaults; `PORT` defaults to 13808 and must match the extension bridge port):
{
"mcpServers": { "lionscraper": { "command": "lionscraper-mcp" } } }
Full `env` example (drop keys you do not need; empty strings behave like “unset” for most of these):
{
"mcpServers": { "lionscraper": { "command": "lionscraper-mcp", "env": { "PORT": "13808", "TIMEOUT": "120000", "LANG": "en-US", "TOKEN": "", "DAEMON": "" } } } }
en_US.UTF-8).Authorization header.lionscraper daemon from thin MCP; empty or other values match omitting the key (auto-start allowed).Restart MCP or the app so the config applies.
lionscraper-mcp is not on PATHAfter `pip install -U lionscraper`, you can run the same routing with `python -m lionscraper`: no arguments after the module name selects thin MCP over stdio; any extra argument (including --debug) uses the CLI instead. Example:
{
"mcpServers": { "lionscraper": { "command": "python", "args": ["-m", "lionscraper"] } } }
Use the same `python` executable you used to install the package (or python3 on some systems).
13808).The server registers tools that mirror extension capabilities. Names and shapes are what your MCP client shows to the model.
| Tool | Purpose (short) |
|---|---|
ping | Check that the extension is connected and registered |
scrape | Auto-detect structure (lists, tables, …); supports pagination |
scrape_article | Article body (e.g. Markdown) and metadata |
scrape_emails | Email addresses on the page |
scrape_phones | Phone numbers (structured) |
scrape_urls | Hyperlink URLs |
scrape_images | Image URLs and basic metadata |
Parameters: A full JSON schema for every field belongs in the tool definitions your client displays and in release-accurate docs; duplicating it here goes stale quickly. Use the tool list / descriptions in the AI app when calling MCP.
The thin MCP process (lionscraper-mcp) exposes Resources and Prompts in addition to Tools:
lionscraper://guide/connection (PORT alignment, ping troubleshooting), lionscraper://guide/when-to-use-tools (prefer LionScraper over WebFetch/curl/wget by scenario), lionscraper://guide/cli (terminal CLI), lionscraper://reference/tools, lionscraper://reference/common-params. Clients list/read them into context; they are served inside the stdio process and do not require the daemon HTTP path (works even if the extension is offline). For the loopback HTTP control plane (/v1/...), see HTTP API (local REST) below (not an MCP resource URI).scrape_article, prefer_lionscraper_scraping, extension troubleshooting). Clients list/get prompts; UI varies by host (Cursor, Trae, …).Copy follows `LANG` (e.g. zh-CN), same as tool metadata.
The `lionscraper` command is the terminal front-end to the same stack as MCP: `lionscraper daemon` listens on `PORT` (default 13808) for HTTP (used by the CLI and by the thin lionscraper-mcp process) and WebSocket (used by the extension). Set `PORT` (and optional `TOKEN`) to match the extension bridge port and any MCP config. Use the CLI for scripts, CI, or quick one-off runs without opening an AI chat.
The CLI talks to the daemon HTTP API on http://127.0.0.1:$PORT (default port 13808, same as the extension). If you do not pass --api-url, a local daemon is auto-started when possible when you run scrape or ping.
Common commands:
lionscraper --help
lionscraper daemon # keep running; HTTP + WebSocket on PORT lionscraper stop # stop daemon on configured PORT lionscraper ping lionscraper scrape -u https://www.example.com lionscraper scrape --method article -u https://www.example.com
`--method` selects which tool the daemon runs (default scrape): scrape, article, emails, phones, urls, images. Repeat `-u` / `--url` to pass several URLs in one run.
Set `PORT` (and optional `TOKEN`) in the environment so the CLI matches the extension and MCP. Use `--api-url http://127.0.0.1:PORT` if the daemon is not on the default base URL. Run `lionscraper --help` for every flag the binary accepts.
Below flags are forwarded to the extension (except `--bridge-timeout-ms`, which only caps how long the CLI waits on the bridge). Actual behavior still depends on the extension version.
Output and connection
| Flag | Meaning |
|---|---|
--format json or pretty | JSON one-line vs. indented (default json) |
--raw | Print the tool’s text block as returned, without re-formatting |
-o / --output | Write the result to a file instead of stdout |
Timing and load
| Flag | Meaning |
|---|---|
--delay | Wait after page load before scraping (dynamic content) |
--timeout-ms | Per-URL timeout on the extension side |
--bridge-timeout-ms | Max wait for this CLI → daemon call |
--scrape-interval | Delay between starting multiple URLs |
--concurrency | Concurrency hint for multi-URL runs |
--scroll-speed | Global scroll speed (extension semantics) |
--max-pages | Pagination cap for list-style `scrape` |
Lazy-loaded / infinite scroll (maps to waitForScroll in the tool payload)
| Flag | Meaning |
|---|---|
--wait-scroll-speed | Pixels per step while scrolling |
--wait-scroll-interval | Delay between scroll steps |
--wait-max-scroll-height | Optional max scroll distance |
--scroll-container | Optional scrollable container selector |
Locale
| Flag | Meaning |
|---|---|
--lang zh-CN or en-US | Language hint for messages / extension UI strings |
Extra payload
| Flag | Meaning |
|---|---|
--include-html + true / false | Ask for full-page HTML in meta when supported |
--include-text + true / false | Ask for full-page plain text in meta when supported |
Method-specific filters (examples; see --help for the full set)
--method emails): --email-domain, --email-keyword, --email-limit--method phones): --phone-type, --phone-area-code, --phone-keyword, --phone-limit--method urls): --url-domain, --url-keyword, --url-pattern, --url-limit--method images): --img-min-width, --img-min-height, --img-format, --img-keyword, --img-limitOptional browser automation hints (when the extension supports them): --auto-launch-browser, --no-auto-launch-browser, --post-launch-wait-ms.
Example A — List / table scrape with pagination, delays, and scroll assist
lionscraper scrape \
-u https://www.example.com/items \ --max-pages 5 \ --delay 800 \ --timeout-ms 90000 \ --bridge-timeout-ms 180000 \ --wait-scroll-speed 400 \ --wait-scroll-interval 350 \
只显示了开头部分;其余内容请在仓库中阅读