playwright-server MCP服务器
\A 配备Playwright工具的MCP服务器\
组件
资源
服务器实现了一个简单的笔记存储系统,具有:
- 自定义的note:// URI方案,用于访问单个笔记
- 每个笔记资源包含名称、描述和text/plain MIME类型
提示
服务器提供单个提示:
- summarize-notes:生成所有存储笔记的摘要
- 可选的"style"参数,用于控制详细程度(简略/详细)
- 生成结合当前所有笔记和风格偏好的提示
工具
服务器实现了以下工具:
playwright_navigate:导航到指定URL。如果不存在活动会话,将自动创建新会话。- 需要一个
url参数(字符串)。
- 需要一个
playwright_screenshot:截取当前页面或特定元素的屏幕截图。- 需要一个
name参数(字符串)作为屏幕截图文件名。 - 可选的
selector参数(字符串)用于指定要截图元素的CSS选择器。如果未提供选择器,则截取全页。
- 需要一个
playwright_click:使用CSS选择器点击页面上的元素。- 需要一个
selector参数(字符串)指定要点击元素的CSS选择器。
- 需要一个
playwright_fill:填写输入字段。- 需要一个
selector参数(字符串)指定输入字段的CSS选择器。 - 需要一个
value参数(字符串)指定要填写的值。
- 需要一个
playwright_evaluate:在浏览器控制台执行JavaScript代码。- 需要一个
script参数(字符串)指定要执行的JavaScript代码。
- 需要一个
playwright_click_text:通过文本内容点击页面上的元素。- 需要一个
text参数(字符串)指定要点击元素的文本内容。
- 需要一个
playwright_get_text_content:获取所有可见元素的文本内容。playwright_get_html_content:获取页面的HTML内容。- 需要一个
selector参数(字符串)指定元素的CSS选择器。
- 需要一个
配置
[TODO: 添加特定于您实现的配置详情]
快速入门
安装
Claude桌面版
在MacOS上:~/Library/Application Support/Claude/claude_desktop_config.json
在Windows上:%APPDATA%/Claude/claude_desktop_config.json
开发/未发布服务器的配置
``` "mcpServers": { "playwright-server": { "command": "uv", "args": [ "--directory", "C:\Users\xxxxx\Documents\project\python\mcp\playwright-server", "run", "playwright-server" ] } } ```已发布服务器的配置
``` "mcpServers": { "playwright-server": { "command": "uvx", "args": [ "playwright-server" ] } } ```开发
构建和发布
为分发准备包:
- 同步依赖并更新锁文件:
uv sync
- 构建包分发:
uv build
这将创建dist/目录中的源代码和轮包。
- 发布到PyPI:
uv publish
注意:您需要通过环境变量或命令标志设置PyPI凭证:
- 令牌:
--token或UV_PUBLISH_TOKEN - 或用户名/密码:
--username/UV_PUBLISH_USERNAME和--password/UV_PUBLISH_PASSWORD
调试
由于MCP服务器通过stdio运行,调试可能具有挑战性。为获得最佳调试体验,我们强烈建议使用MCP Inspector。
您可以通过npm使用以下命令启动MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory C:\Users\YUNYING\Documents\project\python\mcp\playwright-server run playwright-server
启动后,Inspector将显示一个URL,您可以在浏览器中访问它以开始调试。
