SuperAPI AI 工具集

amenbo

amenbo(アメンボ / 水黽)是一个面向 Claude Code、Codex 等编程智能体的 MCP 服务器,专注于低负载、低 Token 消耗的网页信息采集,尤其针对日语网站优化。它通过「大纲→章节」渐进式披露和仅返回变更内容的差分重取来压缩上下文;支持 Shift_JIS、EUC-JP、ISO-2022-JP 等字符编码自动判別,去除 <ruby> 注音避免正文重复,将 colspan/rowspan 与多段表头规范化,检测并还原被正文提取遗漏的对比表格与标题结构,对以图片呈现的页面自动切换为截图。它采用两段式抓取(先普通 HTTP GET,必要时才升级到无头 Chromium),尊重 robots.txt 与 Crawl-Delay,同域串行默认每秒 1 次请求,使用明示机器人身份的 User-Agent,不实现反爬绕过。同一核心也可作为 CLI 使用,适用于 shell 脚本、CI 与调试场景。

访问官网

工具介绍

用途

amenbo(アメンボ / 水黽)是面向 Claude Code、Codex 之类编程智能体的 MCP 服务器,用于从 Web 采集信息。其定位是「不激起水波地滑过水面」:对采集目标低负载,同时用较少的 Token 获取网页内容,并特别针对日语网站做了优化。

主要能力

渐进式披露与差分响应

  • 以 mode: outline 先返回标题树与各章节的 Token 量,再用 section 指定只取需要的章节,避免整页灌入上下文。
  • 对已获取过的 URL 再次获取时,无变化返回 unchanged,有变化只返回变更的章节。

日语站点适配

  • 结构松散(div 嵌套、表格布局)的页面,按渲染结果的几何布局推断正文区域。
  • 自动判別 Shift_JIS / EUC-JP / ISO-2022-JP 编码。
  • 去除 <ruby> 振假名,防止正文二重化。
  • 图片化信息(如料金表、横幅为主的页面)在文本提取贫弱时自动切换为截图。
  • 检测并还原在正文提取时容易整块丢失的高链接密度数据表(如比较表),恢复至原位置;残留表格的 colspan/rowspan 与多段表头做规范化,防止列错位。
  • 标题被带编辑链接的包裹层包住的页面(如 Wiki 系),检测并还原正文所剩章节的标题,保证 outline / section 的渐进披露稳定。
  • 对 Qiita / Zenn / note / はてなブログ / Yahoo!ニュース / PR TIMES 提供专用适配器。

正文处理与预算

  • CJK 对应的正文剪枝:依据标点密度、字符种比例、链接密度去除导航、广告与页脚。
  • 按字符类别做 Token 估算:日语、韩语、西里尔文、表情符号等 Token 单价重于英语,使用按字符类别的系数(经实测校准)计算分页预算。
  • 自动 Markdown / 图片切换:仅对质量评分低的页面使用截图,避免读到损坏的 Markdown 后反复重取。

抓取与礼儀

  • 两段式获取:先普通 HTTP GET,只有需要 JS 渲染的页面才升级到无头 Chromium,大多数获取不启动浏览器。
  • 尊重 robots.txt 与 Crawl-Delay;同域串行,默认 1 req/秒(获取 robots.txt 也计入这 1 次请求)。链接枚举优先使用 sitemap / RSS,不逐页翻爬。
  • 明示机器人身份的 User-Agent,不实现 anti-bot 绕过。
  • 缓存:用 ETag / If-Modified-Since 重新验证;有效期默认 15 分钟(AMENBO_CACHE_TTL_MS),Cache-Control 仅在延长方向采纳(max-age 长于 15 分钟则采用,上限 24 小时;no-store 不保存);不因 max-age=0 或 no-cache 缩短期限。

安全

  • SSRF 防护:拒绝 http/https 以外协议(file:、ftp: 等);若 DNS 解析到的连接目标为 private / loopback / link-local / 保留地址则拒绝;对 DNS rebinding(TOCTOU)把实际连接固定到已验证 IP。
  • 响应体大小上限,防止巨型响应导致 OOM。

使用方式

MCP 服务器

Markdown 获取(普通 fetch / links)只需以下安装;只有使用浏览器(Chromium)的获取(SPA 升级、截图等)才需首次执行一次(约 170MB 下载)。仓库文档中给出的命令形式包括:Claude Code(--scope user 表示全项目共通,按项目则去掉)、以及通过 npx 全局安装("command": "npx", "args": ["-y", "amenbo"])或使用本地构建("command": "node", "args": ["/path/to/amenbo/dist/server.js"])。其他客户端(Cursor / Cline 等)在各自的 MCP 配置(Cursor: ~/.cursor/mcp.json;Cline: MCP Servers 画面的 settings JSON)中加入对应条目。

stdio 下同时响应 MCP 2026-07-28(无状态核心)与 2025 系版本,客户端无论使用哪一版都可按上述配置连接。

提示词

仅有工具定义无法传达「用渐进披露获取」这类用法规范。可将官方提供的用法说明复制到 CLAUDE.md 或 AGENTS.md,让智能体更高效地使用 amenbo;也可仅在当次会话加载,而不写入 CLAUDE.md。支持 MCP 提示词的客户端中,服务器以 usage 提示词分发同样的规范(Claude Code 中为 /mcp__amenbo__usage)。

CLI

amenbo 也可作为与 MCP 服务器共享同一核心(获取、缓存、politeness、提取逻辑)的 CLI 运行。不带参数或 amenbo serve 仍按 MCP 服务器启动(.mcp.json 的 "command": "amenbo" 照常可用),不影响既有 MCP 注册。各子命令详情见 amenbo <fetch|links|screenshot> --help。

MCP 与 CLI 的分工:MCP 是智能体的主路径,浏览器(Chromium)在进程内保持预热,截图等图片可直接返回对话,也能触达 claude.ai 这类没有 shell 的宿主;CLI 适合 shell 脚本、CI、调试、把输出落盘后 grep / 部分读取,或不支持 MCP 的智能体/工具链,因 1 命令 = 1 进程,浏览器每次启动。

缓存、差分响应(unchanged / diff)、速率控制(robots.txt / 每域串行访问)的状态在 MCP 服务器与 CLI 间共享(使用同一个 ~/.cache/amenbo),但速率控制的进程间共享是尽力而为:同域串行仅在各进程内严格保证,MCP 服务器与多个 CLI 同时访问同一域名时,最小间隔可能略有穿透。

链接枚举顺序为 sitemap → RSS/Atom → 页面内链接;screenshot 用于截图。

开发相关

clone 后执行一次以启用秘密信息检查(gitleaks)的 pre-commit 钩子(仓库文档给出对应命令)。

引用

文章或研究中引用时请使用 Zenodo 的 DOI。徽章中的 10.5281/zenodo.21553636 为全版本通用的 Concept DOI,始终解析到最新版;指向特定版本时,从 Zenodo 的记录获取该版 DOI。机器可读的引用信息在 CITATION.cff 中(GitHub 的 "Cite this repository" 可生成 BibTeX / APA)。

限制

  • 正文提取启发式按日语页面调优:渐进披露、缓存、低负载与语言无关,非日语站点也能工作;但非日语页面若正文缺失,请用 selector 指定或 mode: "screenshot" 重取。
  • 不支持 HTTP 代理:不尊重 HTTP_PROXY / HTTPS_PROXY 等环境变量。原因是 SSRF 防护把连接目标固定到已验证 IP(DNS rebinding 对策),与把域名解析交给代理的方式无法并存。必须使用上游代理的网络目前无法使用。
  • 不实现 anti-bot 绕过:robots.txt 拒绝或机器人防护导致获取失败属于既定行为,失败会如实报告。
  • 与类似工具(官方 fetch MCP / Jina Reader / Playwright MCP / PixelRAG pixelshot)的实测比较见仓库文章与 bench/ 目录(其中提到 Token 相差 5000 倍的说法),本页不做展开。

暂未提供

除上述内容外,价格、收费模式、支持平台清单、许可协议等资料未提供,暂未提供。