Token导航 LogoToken导航TokenDH.com
MCP Fetch Ux logo
浏览器工具未说明官方级别未说明来源级核验

MCP Fetch Ux

MCP Server

MCP服务器使用真实浏览器抓取网页,渲染JavaScript,穿透Shadow DOM,返回干净的文本,并可交互操作如点击按钮、填写表单和下载文件。

工具数

1

提示词数

0

GitHub Stars

2

资源数

0
浏览器自动化PythonClaudeClaude

安装说明

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

作者 / 组织

bxxd

提供方

bxxd

最后核验

2026/5/17 20:20

快速接入

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

详细介绍

mcp获取ux

使用真实浏览器获取网页的MCP服务器。渲染JavaScript,穿透Shadow DOM,返回干净的文本。可以与页面交互——点击按钮、填写表单、下载文件。

因为Claude Code的 WebFetch 无限期挂起 在没有超时的慢速站点上,现有的获取工具无法看到ShadowDOM内部。

运作原理

  1. 剧作家 启动无头Chromium并导航到URL
  2. 自动取消cookie/同意覆盖
  3. 等待JS渲染(轮询直到页面内容稳定)
  4. Ctrl+A、Ctrl+C -使用剪贴板API捕获所有可见文本,包括Shadow DOM中的内容
  5. 发现可用操作(按钮、链接、输入)并将其作为提示返回
  6. 可选地运行操作(单击、填充、等待)——如果单击触发下载,则返回文件内容

循环中没有LLM。无API成本。30秒超时。

快速启动

git clone https://github.com/bxxd/mcp-fetch-ux.git
cd mcp-fetch-ux
make install   # install deps + Chromium + 'fetch' CLI to ~/.local/bin/
# Basic fetch
fetch https://www.roche.com/solutions/pipeline

# Click a button to download CSV
fetch https://roche.com/solutions/pipeline --click "button:has-text('Download current view as CSV')"

# Save to file
fetch https://roche.com/solutions/pipeline --click "button:has-text('Download current view as CSV')" -o pipeline.csv

# More content (default 50K chars via MCP, unlimited via CLI)
fetch https://en.wikipedia.org/wiki/Likelihood_ratio --max 100000

启动MCP服务器:

make server    # start on port 5006

MCP配置

{
  "mcpServers": {
    "fetch-ux": {
      "type": "sse",
      "url": "http://127.0.0.1:5006/sse"
    }
  }
}

工具

fetch

参数类型默认值说明
urlstring必需要获取的URL
actionsarraynone捕获前要执行的操作(单击、填充、等待、选择、滚动)
max_lengthint5000返回的最大字符数
start_indexint0从此索引继续(分页)
rawboolfalse返回原始HTML而不是文本

两步互动

第一次调用返回页面内容+可用操作:

Contents of https://www.roche.com/solutions/pipeline:
Title: Roche | Product Development Pipeline

RG7716
faricimab
Vabysmo
macular edema secondary to branch retinal vein occlusion (BRVO)
...

---
Available actions on this page:
  - click: "button:has-text('Download current view as CSV')"
  - click: "button:has-text('Phase')"
  - fill: "search" (search)

第二次调用操作会获取数据:

{
  "url": "https://www.roche.com/solutions/pipeline",
  "actions": [{"action": "click", "selector": "button:has-text('Download current view as CSV')"}]
}

返回完整的CSV(51K个字符,131个带描述的管道条目)。

为什么不只是httpx/curl?

它们不渲染JavaScript。罗氏的流水线页面返回一个空壳——药物数据通过JS加载到Shadow DOM web组件中。 curl 什么也得不到。这个工具得到了人类看到的东西。

为什么不是innerText或可读性?

page.innerText('body')document.getSelection() 不要跨越Shadow DOM边界。可读性无法看到JS渲染的内容。剪贴板API准确地捕捉用户在Chrome中按Ctrl+a、Ctrl+C时获得的内容,这是从现代网页中获取所有可见文本的唯一可靠方法。

为什么不crawl4ai?

已测试 crawl4ai (50K+颗星)在同一罗氏管道页面上。它返回7220个字符,其中没有药物名称——在Shadow DOM中看不到。此工具返回11224个字符和所有131种药物。

演出

浏览器在服务器启动时启动一次并保持活动状态。每次获取都会打开一个新的上下文,获取,关闭。

阶段时间
导航~1-2s
JS渲染+稳定~1-3s
每次取数总计~3-5s

并发限制为3次同时获取。

依赖项

许可证

麻省理工学院

目录标签

目录标签

浏览器自动化PythonClaude网页抓取混合部署ShadowDOMJavaScript渲染Playwright

支持客户端

Claude

接入字段

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

未说明

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

session

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明session部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP