使用说明

项目简介

该项目 'kimtth_mcp-aoai-web-browsing' 是一个 MCP (Model Context Protocol) 服务器的实现,它利用 FastMCP 框架构建,旨在为 LLM 客户端提供网页浏览和操作的能力。通过集成 Microsoft Playwright 库,该服务器能够执行网页导航、点击、填写表单、截图等操作,并能结合 Azure OpenAI 进行更智能的网页内容理解和交互。

主要功能点

  • 网页导航: 支持通过URL导航到指定网页。
  • 元素操作: 允许点击网页元素、填写表单、选择下拉选项、悬停鼠标等。
  • 信息提取: 可以截取网页或特定元素的屏幕截图。
  • JavaScript执行: 支持在浏览器环境中执行 JavaScript 代码。
  • 智能CSS选择器: 结合LLM能力,根据页面内容智能生成CSS选择器。
  • 基于MCP协议: 完全遵循 MCP 协议,易于与任何兼容 MCP 协议的客户端集成。

安装步骤

  1. 克隆仓库

    git clone https://github.com/MCP-Mirror/kimtth_mcp-aoai-web-browsing
    cd kimtth_mcp-aoai-web-browsing
  2. 配置环境变量 复制 '.env.template' 文件并重命名为 '.env',然后根据你的 Azure OpenAI 账户信息填写以下环境变量:

    AZURE_OPEN_AI_ENDPOINT=你的Azure OpenAI终结点
    AZURE_OPEN_AI_API_KEY=你的Azure OpenAI API密钥
    AZURE_OPEN_AI_DEPLOYMENT_MODEL=你的Azure OpenAI部署模型名称
    AZURE_OPEN_AI_API_VERSION=你的Azure OpenAI API版本
  3. 安装依赖 推荐使用 'uv' 进行依赖管理 (如果未安装,请先 'pip install uv'),然后在项目根目录下运行:

    uv sync

    或者,你也可以使用 'pip' 安装依赖:

    pip install -r requirements.txt

服务器配置

MCP 客户端需要以下配置信息来连接到 'kimtth_mcp-aoai-web-browsing' 服务器。请将以下 JSON 配置添加到你的 MCP 客户端配置中:

{
  "serverName": "browser-navigator-server",
  "command": "fastmcp",
  "args": [
    "dev",
    "./server/browser_navigator_server.py:app"
  ],
  "description": "网页浏览自动化 MCP 服务器"
}

配置参数说明:

  • 'serverName': 服务器名称,设置为 "browser-navigator-server"。
  • 'command': 启动服务器的命令,这里使用 'fastmcp' (确保已安装 FastMCP CLI 工具,通常通过 'pip install fastmcp-cli' 安装)。
  • 'args': 传递给 'fastmcp' 命令的参数,用于指定服务器入口点。
    • '"dev"': 以开发模式启动 FastMCP 服务器。
    • '"./server/browser_navigator_server.py:app"': 指定服务器代码文件路径和服务器对象名称 ('app' 是 'server/browser_navigator_server.py' 中 'BrowserNavigationServer()' 实例的默认变量名)。
  • 'description': 服务器的简要描述,方便客户端用户理解服务器用途。

注意: 请确保你的 MCP 客户端能够执行 'fastmcp' 命令,并且 Python 环境配置正确。

基本使用方法

  1. 启动 MCP 服务器: 按照上述服务器配置,通过 MCP 客户端启动 'browser-navigator-server'。启动成功后,服务器将开始监听 MCP 客户端的请求。

  2. MCP 客户端发送请求: 使用兼容 MCP 协议的客户端 (例如 Chat MCP) 向 'browser-navigator-server' 发送请求,调用服务器提供的工具 (Tools)、资源 (Resources) 或 Prompt 模板 (Prompts)。

  3. 利用工具进行网页操作: 在 LLM 客户端中,你可以指示 LLM 使用 'browser-navigator-server' 提供的工具,例如 'playwright_navigate' (导航到URL), 'playwright_click' (点击元素), 'playwright_screenshot' (网页截图) 等,来实现网页的自动化浏览和操作。

  4. 示例: 例如,在 Chat MCP 客户端中,你可以向 LLM 提出类似 "请打开 https://www.example.com 网站并截取全屏截图" 的指令,LLM 客户端会解析指令,调用 'browser-navigator-server' 的 'playwright_navigate' 和 'playwright_screenshot' 工具来完成任务,并将结果返回给用户。

通过这种方式,你可以利用该 MCP 服务器为 LLM 应用增加强大的网页浏览和自动化能力。

信息

分类

网页与API