使用说明

项目简介

MCP URL2SNAP 是一个基于 Model Context Protocol (MCP) 的服务器实现,它提供了一个简单的工具,使 LLM 能够获取指定 URL 的网页截图。该服务器通过调用外部API服务(AbstractAPI)实现截图功能,并将截图存储在本地,然后返回一个可访问的URL给 LLM 客户端。

主要功能点

  • 网页截图: 根据提供的 URL 抓取网页的完整屏幕截图。
  • URL 返回: 仅返回截图的访问 URL,方便 LLM 直接使用,无需额外处理。
  • 易于集成: 遵循 MCP 协议,可以方便地与支持 MCP 协议的 LLM 客户端(如 Claude Desktop)集成。
  • 轻量级: 使用 Python 和 FastMCP 框架构建,易于部署和运行。

安装步骤

  1. 克隆仓库

    git clone https://github.com/Abhi5h3k/MCP-URL2SNAP.git
    cd MCP-URL2SNAP
  2. 安装 UV 按照仓库 'README.md' 提供的步骤安装 UV。通常可以使用 PowerShell 命令:

    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

    并验证安装:

    uv --version
  3. 创建并激活虚拟环境

    uv venv

    激活虚拟环境(Windows):

    .venv\Scripts\activate
  4. 安装依赖

    uv install

服务器配置

要将此 MCP 服务器配置到 MCP 客户端(例如 Claude Desktop),您需要提供服务器的启动命令和参数。以下是 'claude_desktop_config.json' 文件中 'mcpServers' 部分的配置示例,用于注册名为 'url2snap' 的服务器:

{
    "mcpServers": {
        "url2snap": {
            "command": "uv",
            "args": [
                "--directory",
                "C:\\ABSOLUTE\\PATH\\TO\\MCP-URL2SNAP",  // 替换为 MCP-URL2SNAP 仓库的绝对路径
                "run",
                "server.py"
            ],
            "env":{
              "ABSTRACT_API_KEY":"YOUR_ABSTRACT_API_KEY" // 替换为你的 AbstractAPI 密钥
            }
        }
    }
}

配置参数说明:

  • '"url2snap"': 服务器名称,可以自定义,用于在客户端中引用。
  • '"command": "uv"': 启动服务器的命令,这里使用 'uv run' 来运行 Python 脚本。
  • '"args"': 传递给 'uv run' 命令的参数列表:
    • '"--directory"': 指定工作目录为 MCP-URL2SNAP 仓库的绝对路径。请务必将其替换为实际的仓库路径。
    • '"run"': 'uv run' 命令的子命令,用于运行 Python 脚本。
    • '"server.py"': 要运行的服务器脚本文件名。
  • '"env"': 环境变量配置:
    • '"ABSTRACT_API_KEY"': 必须配置 AbstractAPI 的密钥。您需要在 AbstractAPI 官网 注册并获取 API 密钥,然后替换 '"YOUR_ABSTRACT_API_KEY"'。

重要提示:

  • 绝对路径: '"args"' 中的 '--directory' 参数需要使用 MCP-URL2SNAP 仓库的绝对路径。请根据您的实际文件系统路径进行修改。
  • API 密钥: 您需要在 '.env' 文件或 'claude_desktop_config.json' 的 '"env"' 中配置 AbstractAPI 密钥。推荐在 '.env' 文件中配置,避免密钥泄露在配置文件中。在仓库提供的示例中,'.env' 文件用于配置 'ABSTRACT_API_KEY',并且 'claude_desktop_config.json' 的 '"env"' 部分也提供了配置 'ABSTRACT_API_KEY' 的示例,二者选其一即可。

基本使用方法

  1. 启动 MCP 服务器: 按照 "运行服务器" 章节的说明,启动 'server.py'。
  2. 配置 MCP 客户端: 将上述 'claude_desktop_config.json' 配置添加到您的 MCP 客户端配置文件中,并重启客户端。
  3. 在 LLM 中使用: 在支持 MCP 协议的 LLM 应用中,您可以使用自然语言提示来调用 'capture_screenshot' 工具,例如:
    请给我展示 https://github.com/Abhi5h3k 的网页截图
    LLM 客户端会将该请求发送到 MCP 服务器,服务器会返回截图的 URL。然后 LLM 客户端就可以使用这个 URL 来展示网页截图。

使用提示: 由于工具的返回结果是 URL,您可以在提示语中引导 LLM 客户端直接显示或使用这个 URL。

信息

分类

网页与API