Playwright MCP Server 精选
提供一个利用模型上下文协议的服务器,以实现类人浏览器的自动化,该服务器使用 Playwright,允许控制浏览器行为,例如导航、元素交互和滚动。
README
Playwright MCP 服务器
English | 日本語
本项目是一个服务器,它使用模型上下文协议 (MCP) 提供 Playwright 网页内容检索功能。
功能
- 页面导航
- 完整页面内容检索
- 可见内容检索
- 交互元素检测
- 鼠标操作模拟
- 用于测试的回显功能
安装
通过 Smithery 安装
要通过 Smithery 自动为 Claude Desktop 安装 Playwright MCP 服务器,请执行以下操作:
npx -y @smithery/cli install @showfive/playwright-mcp-server --client claude
手动安装
npm install
使用
启动服务器
npm run build
npm start
MCP 工具
以下工具可用:
-
navigate
- 导航到指定的 URL
- 参数:
{ url: string }
- 返回:导航结果
-
get_all_content
- 从整个页面检索内容
- 参数:无
- 返回:页面中的所有文本内容
-
get_visible_content
- 检索当前可见内容
- 参数:
{ minVisiblePercentage?: number }
- 返回:可见文本内容
-
get_interactive_elements
- 获取页面上交互元素(按钮、链接等)的位置信息
- 参数:无
- 返回:交互元素的坐标和边界信息
-
move_mouse
- 将鼠标光标移动到指定的坐标
- 参数:
{ x: number, y: number }
- 返回:操作结果
-
mouse_click
- 在指定坐标执行鼠标点击
- 参数:
{ x: number, y: number, button?: "left" | "right" | "middle", clickCount?: number }
- 返回:点击操作结果
-
mouse_wheel
- 执行鼠标滚轮滚动
- 参数:
{ deltaY: number, deltaX?: number }
- 返回:滚动操作结果
-
drag_and_drop
- 执行拖放操作
- 参数:
{ sourceX: number, sourceY: number, targetX: number, targetY: number }
- 返回:拖放操作结果
-
echo
- 用于测试的回显工具
- 参数:
{ message: string }
- 返回:发送的消息
开发
运行测试
# 运行所有测试
npm test
# 在观察模式下运行测试
npm run test:watch
# 生成覆盖率报告
npm run test:coverage
测试结构
tools/*.test.ts
: 每个工具的功能测试mcp-server.test.ts
: MCP 服务器功能测试
实现功能
-
内容检索
- 完整页面内容检索
- 仅可见内容检索
- 正确的 HTML 解析
-
交互
- 交互元素的检测和位置信息检索
- 鼠标操作模拟(移动、点击、滚动)
- 拖放支持
-
错误处理
- 正确的导航错误处理
- 超时处理
- 无效 URL 检测
-
配置灵活性
- 无头/有头模式选择
- 自定义用户代理
- 视口大小设置
重要提示
- 在使用 MCP 服务器之前,请确保已设置必要的环境变量
- 检索网页内容时,请遵守目标网站的服务条款
- 发送多个请求时,请保持适当的间隔
- 执行鼠标操作时,请保持适当的间隔,因为它们会模拟实际的用户交互
许可证
ISC
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Excel MCP Server
一个模型上下文协议服务器,使 AI 助手能够读取和写入 Microsoft Excel 文件,支持诸如 xlsx、xlsm、xltx 和 xltm 等格式。
@kazuph/mcp-fetch
用于获取网页内容和处理图像的模型上下文协议服务器。这使得 Claude Desktop(或任何 MCP 客户端)能够适当地获取网页内容和处理图像。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
Apple MCP Server
通过 MCP 协议与 Apple 应用(如“信息”、“备忘录”和“通讯录”)进行交互,从而使用自然语言发送消息、搜索和打开应用内容。
DuckDuckGo MCP Server
一个模型上下文协议 (MCP) 服务器,通过 DuckDuckGo 提供网页搜索功能,并具有内容获取和解析的附加功能。
contentful-mcp
在你的 Contentful Space 中更新、创建、删除内容、内容模型和资源。
YouTube Transcript MCP Server
这个服务器用于获取指定 YouTube 视频 URL 的字幕,从而可以与 Goose CLI 或 Goose Desktop 集成,进行字幕提取和处理。