使用说明
带有链接到MCP服务器Playwright的MCP网关的WEBUI
正在运行OLLAMA服务器
设置 OLLAMA_VULKAN=1 设置OLLAMA_SCHED_PREAD=1 设置OLLAMA_DEBUG=1 c: \ollama发球 在web ui中设置上下文: 在一般高级配置中将参数num_ctx设置为32768
用于用Claude创建的MCP网关解决方案
打开WEB UI标准独立容器安装(独立,如果使用docker compose.yml,则不运行)
docker run-d -p 3000:8080 --add host=host.docker.internal:主机网关 -v open-webui:/app/backend/data --名称打开webui --restart always --网络mcp网络`ghcr.io/openwebui/openwebui:main
删除并重建所有内容
docker编写 docker compose-up-build
重新启动特定容器
docker编写重启mcpo
重建特定容器
docker组装-up-d——构建mcpo
查看实时日志
docker编写日志-f mcpo docker日志mcpo网关-f
检查资源使用情况
docker统计mcpo网关
在powershell中测试:
认证持有者
阿布拉卡达布拉
剧作家
调用RestMethod-Urihttp://localhost:8000/playwright/openapi.json http://host.docker.internal:8000/playwright http://mcpo-gateway:8000/playwright
记忆
调用restmethod-kindhttp://localhost:8000/memory/openapi.json http://host.docker.internal:8000/memory http://mcpo-gateway:8000/memory
获取
调用restmethod-kindhttp://localhost:8000/fetch/openapi.json http://host.docker.internal:8000/fetch http://mcpo-gateway:8000/fetch
文件系统
调用restmethod-kindhttp://localhost:8000/filesystem/openapi.json http://host.docker.internal:8000/filesystem http://mcpo-gateway:8000/filesystem
GitHub
调用restmethod-kindhttp://localhost:8000/github/openapi.json http://host.docker.internal:8000/github http://mcpo-gateway:8000/github
示例:导航(根据您在文档中看到的内容调整路径)
PROBANDO PLAYWRIGHT MCP服务器网关通过PowerShell
1.创建脚本文件
打开记事本或您喜欢的文本编辑器。 将您提供的代码粘贴到编辑器中。 以.ps1扩展名保存文件。例如:check_playwright.py。 提示:将其保存到易于访问的文件夹中,例如C:\scripts。
2.创建“简单”别名(可选但推荐)
要通过简单地键入一个短命令(如pwcheck)而不是完整路径来运行脚本,请创建一个批处理包装器: 打开一个新的记事本文件。 粘贴以下行,将路径替换为脚本的位置: 批次 @powershell-执行策略绕过-文件“C:\scripts\check_playwright.ps1”
将此文件另存为pwcheck.bat,保存在系统PATH(如C:\Windows)中的文件夹中。
3.运行脚本:
powershell-执行策略绕过-文件“C:\scripts\check_playwright.ps1”
快速状态检查
写主机“===编剧工具状态===”-前景颜色青色
$工具=@( “浏览器导航”, “浏览器快照”, “browser_take_screenshot”, “浏览器点击”, “浏览器_关闭” )
foreach($tools中的$tool){
试试看{
$response=调用WebRequest-Uri“http://localhost:8000/playwright/$工具“ -Method Options
-错误操作停止
写主机“✓$tool-可用”-前景颜色绿色
}捕获{
写入主机“✗$tool-错误:$($_.Exception.Message)”-前景颜色为红色
}
}
1导航到网站
$正文=@{ url=“https://example.com" }|转换
调用RestMethod-Uri”http://localhost:8000/playwright/browser_navigate" -Method Post -Body$Body `-内容类型“application/json”
2拍摄快照(获取页面内容)
$body=@{}|转换为Json
调用restmethod-类型“http://localhost:8000/playwright/browser_snapshot" -Method Post -Body$Body `-内容类型“application/json”
3截图
$正文=@{ type=“png” filename=“测试截图.png” }|转换
调用RestMethod-Uri”http://localhost:8000/playwright/browser_take_screenshot" -Method Post -Body$Body `-内容类型“application/json”
4.首先导航,然后单击元素
导航
$navBody=@{ url=“https://example.com" }|转换
调用RestMethod-Uri”http://localhost:8000/playwright/browser_navigate" -Method Post
-Body$navBody`
-内容类型“应用程序/json”
获取快照以查找元素
$snapBody=@{}|转换为Json
$snapshot=调用RestMethod-Uri“http://localhost:8000/playwright/browser_snapshot" -Method Post
-Body$snapBody`
-内容类型“应用程序/json”
显示快照以查看可用元素
$快照
5.完整工作流程测试
编剧主持“===编剧完整工作流程测试===”-前景颜色青色
第一步:导航
写入主机“n[1/4] Navigating to example.com..." -ForegroundColor Yellow try { $nav = Invoke-RestMethod -Uri "http://localhost:8000/playwright/browser_navigate"
-方法帖子 -Body (@{url="https://example.com"} | ConvertTo-Json)
-内容类型“应用程序/json”
写主机“✓导航成功”-前景颜色绿色
$nav |转换为Json
}捕获{
写入主机“✗导航失败:$_”-前景颜色红色
退出
}
开始睡眠-秒2
步骤2:获取快照
写入主机“n[2/4] Getting page snapshot..." -ForegroundColor Yellow try { $snapshot = Invoke-RestMethod -Uri "http://localhost:8000/playwright/browser_snapshot"
-方法帖子 -Body (@{} | ConvertTo-Json)
-内容类型“应用程序/json”
写入主机“✓已检索快照”-前景颜色绿色
写主机“内容预览:”-前景颜色白色
$snapshot.content[0]|转换为Json|选择对象-前500个
}捕获{
写入主机“✗快照失败:$_”-前景颜色红色
}
第三步:截图
写入主机“n[3/4] Taking screenshot..." -ForegroundColor Yellow try { $screenshot = Invoke-RestMethod -Uri "http://localhost:8000/playwright/browser_take_screenshot"
-方法帖子 -Body (@{type="png"; filename="test.png"} | ConvertTo-Json)
-内容类型“应用程序/json”
写主机“✓截图已拍摄”-前景颜色绿色
$截图|转换
}捕获{
写入主机“✗截图失败:$_”-前景颜色红色
}
步骤4:关闭浏览器
写入主机“n[4/4] Closing browser..." -ForegroundColor Yellow try { $close = Invoke-RestMethod -Uri "http://localhost:8000/playwright/browser_close"
-方法帖子 -Body (@{} | ConvertTo-Json)
-内容类型“应用程序/json”
写主机“✓浏览器关闭”-前景颜色绿色
}捕获{
写入主机“✗关闭失败:$_”-前景颜色红色
}
写入主机“`n===测试完成===”-前景颜色为青色
6.导航到复杂站点
导航到维基百科
$正文=@{ url=“https://www.wikipedia.org" }|转换
写主机“导航到维基百科…”-前景颜色黄色
$result=调用RestMethod-Uri“http://localhost:8000/playwright/browser_navigate" -Method Post
-Body$身体`
-内容类型“应用程序/json”
$result |转换为Json
获取页面内容
写入主机“nGetting page snapshot..." -ForegroundColor Yellow $snapshot = Invoke-RestMethod -Uri "http://localhost:8000/playwright/browser_snapshot"
-方法帖子 -Body (@{} | ConvertTo-Json)
-内容类型“应用程序/json”
显示前1000个字符
写入主机“`nPage内容(前1000个字符):”-前景颜色青色 ($snapshot |转换为Json-深度5)。子字符串(0,[Math]::Min(1000,($snapshot | ConvertTo Json-深度5))。长度)
7形式互动
导航到带有表单的网站
$NAV=调用restmethod-类型“http://localhost:8000/playwright/browser_navigate" -Method Post
-正文(@{url=“https://www.google.com“}|转换为Json)`
-内容类型“应用程序/json”
开始睡眠-秒2
获取快照以查找表单元素
$snapshot=调用RestMethod-Uri“http://localhost:8000/playwright/browser_snapshot" -Method Post
-正文(@{}|转换为Json)`
-内容类型“应用程序/json”
写主机“页面元素:”-前言颜色青色 $snapshot |转换为Json-深度3