使用说明

项目简介

URL Instax 是一个可以将网页转换为截图的工具,它同时也是一个 Model Context Protocol (MCP) 服务器的实现。通过 URL Instax MCP 服务器,LLM 客户端可以调用预置的 'screenshot' 工具,获取指定 URL 的网页截图,从而扩展 LLM 对网页内容的理解和处理能力。

主要功能点

  • 网页截图工具: 提供 'screenshot' 工具,LLM 客户端可以指定 URL,并获取该网页的 PNG 格式截图。工具支持多种参数配置,如:
    • URL 地址
    • 是否模拟移动设备
    • 请求超时时间
    • 是否截取完整页面
  • MCP 服务器: 内置符合 MCP 协议的服务器端实现,可以通过 JSON-RPC 协议与 LLM 客户端进行通信。
  • 多种部署方式: 可以配置使用预先部署的 HTTP API 服务进行截图,也可以直接使用本地 Playwright 引擎进行截图。
  • 灵活配置: 支持通过环境变量配置 API 服务地址和鉴权 Token。

安装步骤

  1. 环境准备: 确保您的环境中已安装 Python 和 uv 包管理器 (或者 pip)。
  2. 安装 URL Instax: 使用 uvx 包管理器安装 url-instax:
    uvx add url-instax
    或者使用 pip 安装:
    pip install url-instax
  3. (可选) 安装 Playwright: 如果您不希望依赖预先部署的 API 服务,而是希望直接使用本地 Playwright 引擎进行截图,您需要安装 Playwright 浏览器驱动:
    playwright install
    或者使用 uv tool 运行 playwright 安装:
    uv tool run playwright install

服务器配置

要将 URL Instax 配置为 MCP 服务器,您需要在 MCP 客户端的服务器配置文件中添加以下 JSON 对象。这部分配置指导 MCP 客户端如何启动和连接 URL Instax MCP 服务器。

{
  "mcpServers": {
    "yourware-mcp": {  // "yourware-mcp":您为该服务器自定义的名称,用于在 MCP 客户端中引用。
      "command": "uvx",  // "uvx":启动服务器的命令,这里假设您使用 uvx 运行。如果使用 pip 安装,并且 uvx 不可用,可以尝试使用 "python3 -m url_instax.cli"。
      "args": ["url-instax@latest", "mcp"], // ["url-instax@latest", "mcp"]:传递给启动命令的参数。"url-instax@latest" 指定要运行的包, "mcp" 是 url-instax 提供的 MCP 服务器启动命令。
      "env": { // "env": (可选) 环境变量配置。
        "API_BASE_URL": "http://localhost:8890"  // "API_BASE_URL": (可选)  API 服务的基础 URL。如果设置此环境变量,URL Instax MCP 服务器将通过 HTTP API 调用远程服务进行截图。您可以替换为您自己的 API 服务地址,或者使用仓库提供的演示服务器 "https://url-instax.wh1isper.top:8890" (仅供测试,请勿用于生产环境)。如果 **不设置** 此环境变量,URL Instax 将直接使用本地安装的 Playwright 引擎进行截图。
      }
    }
  }
}

基本使用方法

完成上述配置后,您的 MCP 客户端应该能够识别并连接到名为 "yourware-mcp" 的 URL Instax MCP 服务器。LLM 可以通过 MCP 协议调用服务器提供的 'screenshot' 工具,并传递网页 URL 等参数来获取网页截图。截图结果(通常是文件路径或二进制数据)将返回给 LLM 客户端,以便 LLM 进一步处理和利用。

信息

分类

网页与API