使用说明
项目简介
Deno 2 Playwright MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,它允许大型语言模型 (LLM) 通过标准化的 MCP 协议,利用 Playwright 浏览器自动化库与网页进行交互。该服务器旨在为 LLM 应用提供与 Web 内容交互的能力,扩展 LLM 的应用场景。
主要功能点
- 浏览器自动化工具: 提供一系列工具,使 LLM 能够控制浏览器执行各种操作,包括:
- 网页导航: 访问指定 URL 的网页。
- 网页截图: 截取整个网页或特定元素的截图。
- 元素交互: 模拟用户在网页上的点击、输入、选择和悬停等操作。
- JavaScript 执行: 在浏览器环境中执行 JavaScript 代码并获取结果。
- 资源管理: 将浏览器的控制台日志和网页截图作为资源进行管理和访问,LLM 可以通过 MCP 协议获取这些资源。
- 标准 MCP 协议: 完全遵循 MCP 协议规范,确保与任何兼容 MCP 协议的 LLM 客户端无缝对接。
安装步骤
- 安装 Deno: 如果您的系统尚未安装 Deno 运行时,请先安装 Deno。访问 https://deno.land 获取安装指南。
- 克隆仓库: 将仓库 'MCP-Mirror/jakedahn_deno2-playwright-mcp-server' 克隆到本地。
git clone https://github.com/MCP-Mirror/jakedahn_deno2-playwright-mcp-server cd jakedahn_deno2-playwright-mcp-server - 构建可执行文件: 根据您的操作系统,运行相应的 Deno task 构建可执行文件。
- macOS: 'deno task build-mac'
- Linux (x86_64): 'deno task build-linux-x86_64'
- Linux (ARM64): 'deno task build-linux-ARM64'
- Windows (x86_64): 'deno task build-windows-x86_64' 构建成功后,会在项目根目录下生成名为 'playwright-server' (或 'playwright-server.exe' for Windows) 的可执行文件。
服务器配置
要让 MCP 客户端(例如 Claude)连接到此服务器,您需要配置客户端的 MCP 服务器设置。以 Claude Desktop 为例,您需要编辑 '~/Library/Application\ Support/Claude/claude_desktop_config.json' 文件,添加或修改 'mcpServers' 配置项。
以下是一个配置示例,请根据实际情况修改 'command' 路径:
{ "mcpServers": { "playwright": { "command": "/path/to/jakedahn_deno2-playwright-mcp-server/playwright-server" } } }
配置参数说明:
- '"playwright"': 服务器名称,您可以自定义,用于在客户端中标识该服务器。
- '"command"': 指向 'playwright-server' 可执行文件的绝对路径。请将 '/path/to/jakedahn_deno2-playwright-mcp-server/playwright-server' 替换为实际的路径。
注意: 请确保可执行文件 'playwright-server' 具有执行权限。
基本使用方法
- 启动服务器: 无需手动启动服务器,当 MCP 客户端(如 Claude)需要使用 'playwright' 服务器时,会自动根据配置启动该服务器。
- 客户端发起请求: 在 MCP 客户端中,当需要执行浏览器自动化任务时,客户端会根据 MCP 协议向 'playwright' 服务器发送请求,例如调用 'playwright_navigate' 工具导航到指定网页,或调用 'playwright_screenshot' 工具截取网页截图。
- 服务器处理请求: 'playwright' 服务器接收到请求后,会调用 Playwright 库执行相应的浏览器操作,并将结果以 MCP 响应格式返回给客户端。
- 客户端获取结果: MCP 客户端解析服务器返回的响应,获取工具执行结果或资源内容,并将其用于后续的 LLM 应用流程中。
例如,LLM 可能会指示服务器导航到某个网页并提取信息,或者在用户与网页交互后截取屏幕截图以供分析。具体的交互方式取决于 LLM 客户端的功能和设计。
信息
分类
开发者工具