Playwright MCP Server 使用说明
项目简介
Playwright MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,它利用 Playwright 浏览器自动化工具,为大型语言模型 (LLM) 客户端提供强大的网页浏览和信息获取能力。通过 MCP 协议,该服务器可以作为 LLM 的扩展工具,使其能够访问互联网内容、提取网页信息,并模拟用户在网页上的操作。
主要功能点
- 网页导航 (navigate): 允许 LLM 指示服务器访问指定的 URL,打开网页。
- 全页内容抓取 (get_all_content): 获取当前网页的完整 HTML 内容,并解析为结构化文本。
- 可见内容抓取 (get_visible_content): 仅抓取当前网页可视区域的内容,减少信息噪音。
- 交互元素定位 (get_interactive_elements): 识别网页上的按钮、链接、输入框等可交互元素,并返回它们的位置和属性信息。
- 鼠标操作模拟 (move_mouse, mouse_click, mouse_wheel, drag_and_drop): 允许 LLM 指示服务器模拟鼠标移动、点击、滚动和拖拽等用户操作,与网页进行交互。
- 回声测试 (echo): 用于测试服务器连接和工具调用的简单工具。
安装步骤
- 手动安装:
打开终端,克隆或下载该仓库代码到本地,并进入项目根目录,运行以下命令安装依赖:
npm install - 构建项目:
安装完成后,运行以下命令构建项目,生成可执行的 JavaScript 代码:
npm run build
服务器配置
MCP 客户端需要配置以下信息才能连接到 Playwright MCP Server。配置信息为 JSON 格式,通常在客户端的服务器配置或插件配置中设置。
{ "serverName": "Playwright MCP Server", "command": "npm", "args": ["start"] }
- 'serverName': 服务器的名称,可以自定义,用于在客户端中标识该服务器,例如 "Playwright MCP Server"。
- 'command': 启动服务器的命令。由于该项目使用 npm 管理和启动,这里设置为 'npm'。
- 'args': 启动命令的参数。'npm start' 是启动该服务器的标准命令,因此参数设置为 '["start"]'。
请注意: MCP 客户端通常会自动查找并执行 'command' 和 'args' 指定的命令来启动 MCP 服务器,用户无需手动执行。
基本使用方法
- 启动服务器: 在完成安装和构建后,在项目根目录下运行 'npm start' 命令启动 Playwright MCP Server。服务器启动后,会通过标准输入输出 (stdio) 监听 MCP 客户端的请求。
- 配置 MCP 客户端: 在你的 MCP 客户端应用中,添加或配置服务器,填入上述 JSON 格式的服务器配置信息。确保客户端配置正确的连接方式 (stdio)。
- 调用工具: 当客户端成功连接到 Playwright MCP Server 后,你就可以在客户端中调用服务器提供的各种工具,例如 'navigate'、'get_all_content' 等。工具的具体名称、参数和使用方法请参考仓库的 'README.md' 文件或工具定义。
示例工具调用 (在 MCP 客户端中):
{ "method": "call_tool", "params": { "name": "navigate", "arguments": { "url": "https://www.example.com" } } }
这个 JSON 请求会指示 Playwright MCP Server 使用 'navigate' 工具访问 'https://www.example.com' 网页。
注意事项
- 确保你的运行环境中已安装 Node.js 和 npm。
- 首次运行可能需要下载 Playwright 浏览器,请耐心等待。
- 使用网页抓取功能时,请遵守目标网站的服务条款和 robots.txt 协议,合理使用,避免对网站造成过大压力。
- 模拟鼠标操作时,请谨慎使用,确保操作符合预期,避免误操作。
信息
分类
网页与API