Token导航 LogoToken导航TokenDH.com
Light Browser logo
搜索检索未说明官方级别未说明来源级核验

Light Browser

MCP Server

一个轻量级网页浏览器,专注于内容提取而非视觉保真度,适用于带宽受限环境和需要高效处理文本的系统。

工具数

10

提示词数

0

GitHub Stars

4

资源数

0
命令行工具TypeScript内容提取搜索

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

danilop

提供方

danilop

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

灯光浏览器

一个轻量级的网络浏览器,专为 人类 (CLI/TUI)和 AI代理 (MCP)。将内容提取置于视觉保真度之上,使网络内容在带宽受限的环境中以及比像素更有效地处理文本的系统中都可以访问。

特性

  • 三层发动机:cheerio(静态HTML)、jsdom(简单JS)、Playwright(全浏览器)
  • 语义搜索:使用本地嵌入的AI驱动内容过滤
  • 智能过滤:搜索时,只返回相关链接和图像
  • 多路输出:Markdown、JSON、纯文本
  • MCP服务器:AI代理的完整模型上下文协议支持
  • 交互式TUI:类似Vim的终端界面
  • 单个二进制:不需要运行时依赖关系

安装

选项1:单线安装(推荐)

需要 包子 -安装方式 curl -fsSL https://bun.sh/install | bash

# Run directly without installing (downloads on first use)
bunx github:danilop/light-browser https://example.com

# Always use latest version from GitHub (add #main)
bunx github:danilop/light-browser#main https://example.com

# Or install globally
bun add -g github:danilop/light-browser
light-browser https://example.com

选项2:下载二进制文件(无需Bun)

从以下网址下载适用于您平台的预构建二进制文件 发布:

平台二进制
macOS(苹果硅)light-browser-darwin-arm64
macOS(英特尔)light-browser-darwin-x64
Linux(ARM64)light-browser-linux-arm64
Linux(x64)light-browser-linux-x64
Windows(x64)light-browser-windows-x64.exe
# macOS/Linux: Make executable and move to PATH
chmod +x light-browser-darwin-arm64
sudo mv light-browser-darwin-arm64 /usr/local/bin/light-browser

选项3:来源

git clone https://github.com/danilop/light-browser.git
cd light-browser
bun install
bun run src/index.ts https://example.com

快速开始

# Interactive: Opens TUI automatically when in terminal
light-browser https://example.com

# Pipe/Script: Output markdown to stdout
light-browser https://example.com --dump

# Semantic search - find content about pricing
light-browser https://example.com --dump --query "how much does it cost"

# JSON output for scripts
light-browser https://example.com --json

# MCP: Start server for AI agents
light-browser serve

______________________________________________________________________

对于人类

CLI使用情况

基本命令

# Fetch and display as markdown (default)
light-browser https://example.com

# Output as JSON
light-browser https://example.com --json

# Output as plain text
light-browser https://example.com --format text

# Quiet mode (no status messages)
light-browser https://example.com -q

# Verbose mode (timing details)
light-browser https://example.com -v

内容过滤

Light Browser提供强大的过滤功能,只提取您需要的内容:

# CSS selectors - extract specific elements
light-browser https://example.com -s "main" -s "article"

# Keywords - exact text matching
light-browser https://example.com -k "price" -k "shipping"

# Semantic search - AI-powered similarity matching
light-browser https://example.com --query "contact information"

智能链接和媒体过滤:使用时 -k (关键字)或 --query (语义搜索),仅返回出现在匹配内容中或与匹配内容相关的链接和图像。这大大降低了输出中的噪声。

# Example: On a news site, only get links related to "AI"
light-browser https://news.ycombinator.com --query "artificial intelligence"
# Returns: Only the matching headlines + their specific links

语义搜索

--query 选项使用本地AI嵌入(全MiniLM-L6-v2)来查找语义相关的内容:

# Find pricing info even if page doesn't use the word "price"
light-browser https://store.com --query "how much does it cost"
# Matches: "pricing", "$99", "fees", "subscription cost", etc.

# Find contact methods
light-browser https://company.com --query "ways to reach support"
# Matches: email addresses, phone numbers, contact forms, etc.

约23MB的型号在首次使用时会自动下载,并完全在本地运行。

选项:

  • --semantic-threshold :最小相似性得分(默认值:0.3)
  • --semantic-top-k :返回的最大结果数(默认值:10)

发动机等级

层级发动机转速用例
1cheerio~50ms静态HTML页面
2jsdom~150-300ms使用简单JS的页面
3编剧~500-2000ms复杂的SPA(React、Vue)
# Force a specific tier
light-browser https://react-app.com --tier 3

# Default is tier 1 (fastest)

代币预算

限制LLM消耗的输出大小:

# Limit to ~1000 tokens
light-browser https://example.com --max-tokens 1000

批处理

一次处理多个URL:

# Create URL list
cat > urls.txt          markdown, text, json (default: markdown)
  -t, --tier              Engine tier: 1, 2, or 3 (default: 1)
  --timeout                 Request timeout (default: 30000)
  -s, --selector   CSS selectors to extract
  -k, --keyword     Keywords for exact filtering
  --query                 Semantic search query
  --semantic-threshold     Similarity threshold (default: 0.3)
  --semantic-top-k           Max semantic results (default: 10)
  --max-tokens               Token budget limit
  -q, --quiet                   Suppress status messages
  -v, --verbose                 Show timing details
  --dump                        Force non-interactive output (for scripts/pipes)
  --download-media              Process images/videos
  --image-size             Max image dimensions (default: 640x480)
  --image-quality            Image quality 1-100 (default: 80)
  --video-frames             Video frames to extract (default: 5)
  --batch                 Process URLs from file
  --batch-output          Write results to file
  --batch-concurrency        Parallel requests (default: 1)
  --stealth                     Browser-like fingerprint
  --json                        Shorthand for --format json

Commands:
  serve                         Start MCP server

交互式浏览器(TUI)

当stdout是一个终端时,Light Browser默认打开一个交互式w3m/lynx风格的浏览器:

# Opens interactive browser automatically
light-browser https://example.com

# Force non-interactive output
light-browser https://example.com --dump
echo "https://example.com" | light-browser

键盘快捷键

关键行动
Tab下一个可聚焦元素(链接/输入/按钮)
Shift+Tab上一个可聚焦元素
Enter激活(点击链接、编辑字段、提交)
j / 向下滚动
k / 向上滚动
d / PgDn向下翻页
u / PgUp向上翻页
g转到顶部
G转到底部
b回到历史
f在历史中前进
1-9按编号跟踪链接
/在页面中搜索
n / N下一个/上一个搜索结果
:命令模式
q退出

输入模式(表单字段)

当您在输入字段上按Enter键时:

  • 键入您的文本
  • Enter -保存并退出输入模式
  • Escape -取消并退出
  • Tab -保存并移动到下一个字段

命令

  • :open -导航到URL
  • :links -显示所有链接
  • :forms -显示所有表单
  • :back -回去吧
  • :forward -继续
  • :refresh -重新加载页面
  • :help -显示所有键盘快捷键
  • :quit -退出

______________________________________________________________________

人工智能代理(MCP)

Light Browser提供了一个 模型上下文协议(MCP)服务器 用于AI代理集成。

设置

需要 包子 -安装方式 curl -fsSL https://bun.sh/install | bash

添加到MCP客户端配置中:

{
  "mcpServers": {
    "light-browser": {
      "command": "bunx",
      "args": ["github:danilop/light-browser#main", "serve"]
    }
  }
}

就是这样!无克隆,无需手动安装。首次使用时自动下载。这 #main 后缀确保您始终获得最新版本。

Alternative: Using compiled binary (no Bun needed)

下载自 发布那么:

{
  "mcpServers": {
    "light-browser": {
      "command": "/usr/local/bin/light-browser",
      "args": ["serve"]
    }
  }
}

MCP工具

browse -高级提取(推荐)

获取网络内容的最简单方法:

{
  "name": "browse",
  "arguments": {
    "url": "https://example.com",
    "format": "markdown",
    "query": "find pricing information",
    "maxTokens": 5000
  }
}

参数:

  • url (必填):要获取的URL
  • format: "markdown" | "text" | "json" (默认值:markdown)
  • query:语义搜索以过滤内容
  • keywords:精确匹配关键字数组
  • selectors:CSS选择器数组
  • maxTokens:限制输出大小
  • maxTier:最大发动机级别(1-3)
  • includeMedia:在响应中包含图像(默认值:false)

includeMedia: true:

  • 图像被下载、调整大小(最大640×480)并转换为WebP
  • 在响应中以base64编码数据返回
  • 响应格式:
  {
    "content": [
      { "type": "text", "text": "Page content with [img:1] references..." },
      { "type": "image", "data": "base64...", "mimeType": "image/webp" }
    ]
  }

navigate -创建会话

对于多步骤交互:

{
  "name": "navigate",
  "arguments": { "url": "https://example.com" }
}
// Returns: { "sessionId": "session-abc123" }

snapshot -获取页面内容

{
  "name": "snapshot",
  "arguments": {
    "sessionId": "session-abc123",
    "format": "markdown",
    "query": "contact info"
  }
}

get_links / get_forms

{
  "name": "get_links",
  "arguments": {
    "sessionId": "session-abc123",
    "filter": "pricing"
  }
}

fill_form / submit_form

{
  "name": "fill_form",
  "arguments": {
    "sessionId": "session-abc123",
    "formId": "login-form",
    "fields": { "username": "user", "password": "pass" }
  }
}
{
  "name": "submit_form",
  "arguments": {
    "sessionId": "session-abc123",
    "formId": "login-form"
  }
}

click_link

{
  "name": "click_link",
  "arguments": {
    "sessionId": "session-abc123",
    "linkText": "Products"
  }
}

session_list / session_close

{ "name": "session_list", "arguments": {} }
{ "name": "session_close", "arguments": { "sessionId": "session-abc123" } }

示例工作流

简单提取

browse({ url: "https://store.com", query: "product prices" })

多步导航

1. navigate({ url: "https://store.com" })
   → { sessionId: "session-123" }

2. get_links({ sessionId: "session-123", filter: "products" })

3. click_link({ sessionId: "session-123", linkText: "Products" })

4. session_close({ sessionId: "session-123" })

表格提交

1. navigate({ url: "https://example.com/login" })

2. get_forms({ sessionId: "session-123" })

3. fill_form({
     sessionId: "session-123",
     formId: "login-form",
     fields: { username: "user", password: "pass" }
   })

4. submit_form({ sessionId: "session-123", formId: "login-form" })
   → Returns resulting page content

______________________________________________________________________

技术细节

媒体处理

随着 --download-media:

  • 图像:调整为最大640×480,转换为WebP
  • 视频:按间隔提取的帧(需要ffmpeg)
  • 输出:Base64编码的MCP兼容内容

PDF支持

PDF会自动检测和提取:

light-browser https://example.com/document.pdf

文本提取

Light Browser从任何HTML结构中提取所有可见文本,而不管语义标记如何。这意味着它适用于:

  • 用于布局的表格
  • 嵌套的div和span
  • 非语义HTML
  • 任何网站,而不仅仅是那些使用正确HTML5语义的网站

发展

# Install dependencies
bun install

# Run tests (172 tests)
bun test

# Type check
bun run typecheck

# Lint & format
bun run lint
bun run format

# Build for current platform
bun run build

# Build for all platforms
bun run build:all

构建二进制文件

# Current platform
bun run build
# → dist/light-browser

# All platforms
bun run build:all
# → dist/light-browser-darwin-arm64
# → dist/light-browser-darwin-x64
# → dist/light-browser-linux-arm64
# → dist/light-browser-linux-x64
# → dist/light-browser-windows-x64.exe

释放

发布是通过GitHub Actions自动完成的。要创建新版本,请执行以下操作:

# 1. Update version in package.json
# 2. Commit the version bump
git add package.json
git commit -m "Bump version to X.Y.Z"

# 3. Create and push a version tag
git tag vX.Y.Z
git push origin main --tags

这将触发发布工作流,该工作流:

  1. 为所有平台(macOS、Linux、Windows)构建二进制文件
  2. 创建附带二进制文件的GitHub版本
  3. 自动从提交中生成发行说明

版本格式:使用语义版本控制(例如。, v0.2.0, v1.0.0-beta.1)

许可证

麻省理工学院

目录标签

目录标签

命令行工具TypeScript内容提取搜索轻量级浏览器本地部署AI代理语义搜索

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP