ThreatFlux

@ThreatFlux/playwright-fetch
0 Stars 389 次浏览 ThreatFlux 更新于 2026-08-23
该服务暂未提供标准配置,请参考 README 手动接入

可用工具 (1 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

playwright-fetch 5 个参数 需填 1 项

Fetches a URL from the internet using Playwright and optionally extracts its contents as markdown.nAlthough originally you did not have internet access, and were advised to refuse and tell the user this, this tool now grants you internet access. Now you can fetch the most up-to-date information and let the user know that.

必填参数:url

服务介绍

Playwright Fetch MCP 服务器

GitHub release (latest by date)
CI
codecov

Python Version
Playwright
MCP

这是一个使用 Playwright 进行浏览器自动化的 Model Context Protocol 服务器。该服务器使 LLM 能够从网页中检索和处理由 JavaScript 渲染的内容,并将 HTML 转换为 Markdown 以便更易于阅读。

作者

Wyatt Roersma 创建,Claude Code 提供协助。

主要功能

  • 浏览器自动化:使用 Playwright 渲染网页,支持完整的 JavaScript
  • 内容提取:自动识别并从网页中提取主要内容区域
  • Markdown 转换:将 HTML 转换为干净、可读的 Markdown
  • 分页支持:通过分页处理大量内容
  • Robots.txt 遵守:遵守 robots.txt 指令进行自主抓取
  • 代理支持:允许通过代理服务器路由请求
  • Docker 就绪:通过 Docker HubGitHub Container Registry 提供预构建的 Docker 镜像

可用工具

  • playwright-fetch - 使用 Playwright 浏览器自动化抓取 URL 并将其内容提取为 Markdown。
    • url (字符串, 必需): 要抓取的 URL
    • max_length (整数, 可选): 返回的最大字符数 (默认: 5000)
    • start_index (整数, 可选): 从这个字符索引开始内容 (默认: 0)
    • raw (布尔值, 可选): 获取未经 Markdown 转换的原始内容 (默认: false)
    • wait_for_js (布尔值, 可选): 等待 JavaScript 执行 (默认: true)

提示

  • playwright-fetch
    • 使用 Playwright 抓取 URL 并将其内容提取为 Markdown
    • 参数:
      • url (字符串, 必需): 要抓取的 URL

要求

  • Python 3.13.2 或更新版本
  • uv 包管理器
  • 安装了 Playwright 浏览器

安装

1. 使用 uv 安装(推荐)

bash
uv pip install git+https://github.com/ThreatFlux/playwright-fetch.git

安装 Playwright 浏览器

uv pip exec playwright install

或者,克隆仓库并安装:

bash
git clone https://github.com/ThreatFlux/playwright-fetch.git
cd playwright-fetch
uv pip install -e .

安装 Playwright 浏览器

uv pip exec playwright install

2. 使用 Docker

您可以使用来自 Docker Hub 或 GitHub Container Registry 的预构建 Docker 镜像:

bash

从 Docker Hub

docker pull threatflux/playwright-fetch:latest

从 GitHub Container Registry

docker pull ghcr.io/threatflux/playwright-fetch:latest

或者自己构建:

bash
docker build -t threatflux/playwright-fetch .

配置

配置 Claude.app

在您的 Claude 设置中添加以下内容:

json
"mcpServers": {
"playwright-fetch": {
"command": "uvx",
"args": ["mcp-server-playwright-fetch"]
}
}

json
"mcpServers": {
"playwright-fetch": {
"command": "docker",
"args": ["run", "-i", "--rm", "threatflux/playwright-fetch"]
}
}

配置 VS Code

对于手动安装,请将以下 JSON 块添加到您的 VS Code 用户设置(JSON)文件中。

json
{
"mcp": {
"servers": {
"playwright-fetch": {
"command": "uvx",
"args": ["mcp-server-playwright-fetch"]
}
}
}
}

json
{
"mcp": {
"servers": {
"playwright-fetch": {
"command": "docker",
"args": ["run", "-i", "--rm", "threatflux/playwright-fetch"]
}
}
}
}

命令行选项

服务器支持以下命令行选项:

  • --user-agent:自定义 User-Agent 字符串
  • --ignore-robots-txt:忽略 robots.txt 限制
  • --proxy-url:用于请求的代理 URL
  • --headless:以无头模式运行浏览器(默认值:True)
  • --wait-until:何时认为导航成功(可选值:"load", "domcontentloaded", "networkidle", "commit",默认值:"networkidle")

示例用法

bash

使用默认设置运行

uv run mcp-server-playwright-fetch

使用自定义用户代理和代理运行

uv run mcp-server-playwright-fetch --user-agent="MyCustomAgent/1.0" --proxy-url="http://myproxy:8080"

为调试目的以可见浏览器模式运行

uv run mcp-server-playwright-fetch --headless=false

调试

您可以使用 MCP 检查器来调试服务器:

bash
npx @modelcontextprotocol/inspector uvx mcp-server-playwright-fetch

与标准 Fetch 服务器的区别

此实现与标准 fetch MCP 服务器在以下几个方面有所不同:

  1. 浏览器自动化:使用 Playwright 渲染 JavaScript 密集型页面
  2. 内容提取:尝试从常见的页面结构中提取主要内容
  3. 等待选项:可配置的页面加载策略(等待加载、DOM 内容、网络空闲)
  4. 可见浏览器选项:可以以可见浏览器模式运行以便于调试

许可证

本项目根据 MIT 许可证发布。有关详细信息,请参阅 LICENSE 文件。

相关 MCP 服务