Playwright Server MCP 使用说明
项目简介
Playwright Server MCP 是一个基于 Model Context Protocol (MCP) 构建的服务器,它扩展了 LLM 的能力,使其能够通过 Playwright 提供的工具与网页进行交互。该服务器提供了一系列工具,允许 LLM 控制浏览器行为,例如访问特定网址、截取网页屏幕截图、模拟用户点击和填写表单等操作,从而实现更丰富的基于网页的任务自动化和信息获取。
主要功能点
- 资源管理 (Resources): 实现了简单的笔记存储系统,虽然示例中资源功能未完全实现,但框架已具备资源管理的基础结构。
- Prompt 模板 (Prompts): 提供了一个 'summarize-notes' prompt,用于总结存储的笔记,展示了 prompt 模板的基本概念,尽管示例中 prompt 功能也未完全实现。
- 工具注册和执行 (Tools): 核心功能是集成了 Playwright 提供的网页自动化工具,包括:
- 'playwright_navigate': 导航到指定 URL。
- 'playwright_screenshot': 截取网页或特定元素的屏幕截图。
- 'playwright_click': 点击网页上的元素。
- 'playwright_fill': 填写网页输入框。
- 'playwright_evaluate': 在浏览器控制台中执行 JavaScript 代码。
- 'playwright_click_text': 点击包含特定文本内容的网页元素。
- 'playwright_get_text_content': 获取网页中所有可见元素的文本内容。
- 'playwright_get_html_content': 获取网页元素的 HTML 内容。
- 'playwright_new_session': 创建新的浏览器会话 (虽然在代码注释中,但实际上已在工具列表中)。
安装步骤
- 配置 MCP 客户端 (例如 Claude Desktop): 根据您的 MCP 客户端类型,配置 MCP 服务器连接。以 Claude Desktop 为例,需要修改配置文件 'claude_desktop_config.json'。
- MacOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
服务器配置
在 'claude_desktop_config.json' 文件中,您需要在 '"mcpServers"' 字段下添加 Playwright Server MCP 的配置信息。
开发/未发布服务器配置 (适用于开发调试阶段):
{ "mcpServers": { "playwright-server": { "command": "uv", "args": [ "--directory", "您的Playwright Server MCP项目路径", // 将 "您的Playwright Server MCP项目路径" 替换为项目实际的绝对路径,例如 "C:\Users\xxxxx\Documents\project\python\mcp\playwright-server" "run", "playwright-server" ] } } }
已发布服务器配置 (适用于部署后):
{ "mcpServers": { "playwright-server": { "command": "uvx", "args": [ "playwright-server" ] } } }
配置参数说明:
- '"playwright-server"': 服务器名称,在 MCP 客户端中用于标识和调用此服务器。
- '"command"': 启动服务器的命令。 'uv' 和 'uvx' 可能是项目使用的包管理和运行工具,具体取决于项目打包和发布方式。如果是直接运行 Python 脚本,command 可能是 'python' 或 'python3'。
- '"args"': 传递给启动命令的参数列表。
- 对于开发配置,'"--directory"' 指定项目目录, '"run"' 和 '"playwright-server"' 可能是项目内部定义的运行脚本或命令。
- 对于发布配置, '"uvx"' 可能是用于运行已打包的服务器的命令, '"playwright-server"' 可能是包名或入口点。
请根据实际情况和项目文档调整 'command' 和 'args' 配置。 如果项目有更详细的部署和运行文档,请优先参考项目文档进行配置。
基本使用方法
配置完成后,在支持 MCP 协议的 LLM 客户端中 (例如 Claude 配合配置后的 'claude_desktop_config.json'),您可以通过自然语言指令调用 Playwright Server MCP 提供的工具。例如:
- "使用 'playwright_navigate' 工具访问 https://www.example.com"
- "使用 'playwright_screenshot' 工具,文件名为 'homepage.png',截取当前网页的屏幕截图"
- "使用 'playwright_click' 工具点击 CSS 选择器为 '#submit-button' 的元素"
LLM 客户端会将这些自然语言指令转换为对 MCP 服务器的工具调用请求,Playwright Server MCP 执行相应的 Playwright 操作,并将结果返回给 LLM 客户端。
注意: 首次使用可能需要先使用 'playwright_new_session' 工具创建新的浏览器会话 (如果 'playwright_navigate' 工具没有自动创建会话的话)。
信息
分类
网页与API