使用说明
钢制木偶
使用Puppeteer和Steel提供浏览器自动化功能的模型上下文协议服务器。此服务器使LLM能够在真实的浏览器环境中与网页交互、截图和执行JavaScript。
组件
工具
-
puppeteer_navigation
- 导航到浏览器中的任何URL
- 输入:
url(字符串,必填):要导航到的URLtimeout(数字,可选,默认值:60000):导航超时(毫秒)waitUntil(字符串,可选,默认:“domcontentloaded”):何时考虑导航成功。选项:“加载”、“加载域内容”、“networkidle0”、“networkidle2”
-
木偶戏
- 捕获整个页面或特定元素的屏幕截图
- 输入:
name(string,必填):屏幕截图的名称selector(string,可选):用于截图元素的CSS选择器
-
木偶戏
- 点击页面上的元素
- 输入:
selector(string,必填):用于单击元素的CSS选择器
-
木偶戏
- 填写输入字段
- 输入:
selector(string,必填):输入字段的CSS选择器value(string,必填):要填写的值
-
木偶师_选择
- 选择带有Select标签的元素
- 输入:
selector(string,必填):用于选择元素的CSS选择器value(字符串,必填):要选择的值
-
木偶戏
- 将元素悬停在页面上
- 输入:
selector(string,必填):用于悬停元素的CSS选择器
-
木偶师_评价
- 在浏览器控制台中执行JavaScript
- 输入:
script(string,必填):要执行的JavaScript代码
-
木偶师_get_content
- 从当前页面提取内容
- 输入:
selector(string,可选):CSS选择器,用于从特定元素中获取内容。如果未提供,则返回整页内容
-
木偶戏
- 滚动页面以触发延迟加载
- 输入:
scrollDelay(数字,可选,默认值:100):滚动之间的延迟(毫秒)maxScrolls(数字,可选,默认值:50):最大滚动次数
资源
服务器提供对两种资源的访问:
-
控制台日志 (
console://logs)- 文本格式的浏览器控制台输出
- 包括来自浏览器的所有控制台消息
-
截图 (
screenshot://<name>)- 捕获的屏幕截图的PNG图像
- 可通过捕获期间指定的屏幕截图名称访问
主要特点
- 使用Puppeteer实现浏览器自动化
- 用于浏览器会话管理的钢铁集成
- 控制台日志监控和捕获
- 屏幕截图功能
- JavaScript执行
- 基本的网络交互(导航、点击、表单填写)
- 使用令牌限制处理进行内容提取
- 通过滚动实现延迟加载支持
- 本地和远程Steel实例支持
配置
Claude桌面配置
要将Steel Puppeter服务器与Claude Desktop一起使用,请将以下配置添加到您的Claude Desktop配置文件中(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json 在 macOS 上:
{
"mcpServers": {
"steel-puppeteer": {
"command": "node",
"args": ["path/to/steel-puppeteer/dist/index.js"],
"env": {
"STEEL_LOCAL": "true"
}
}
}
}
替换 "path/to/steel-puppeteer/dist/index.js" 以及系统上编译的JavaScript文件的实际路径。
环境变量
Steel Puppeter服务器可以使用以下环境变量进行配置:
STEEL_LOCAL(可选,默认:“false”):设置为“true”以使用本地Steel实例而不是云服务。STEEL_API_KEY(仅在以下情况下需要STEEL_LOCAL是“false”):您的Steel API密钥,用于在使用云服务时进行身份验证。STEEL_URL(可选):如果使用自定义部署,请提供Steel实例的URL。
服务器配置
如果你直接运行Steel Puppeter服务器(而不是通过Claude Desktop),你可以在shell中设置这些环境变量或创建一个 .env 项目根目录中的文件。这里有一个例子 .env 本地使用的文件:
STEEL_LOCAL=true
如果您正在使用Steel云服务 .env 文件看起来像这样:
STEEL_API_KEY=your-steel-api-key
STEEL_LOCAL=false
运行服务器
要启动Steel Puppeter服务器,请执行以下操作:
-
安装依赖项:
npm install -
构建项目:
npm run build -
启动服务器:
npm start -
打开克劳德桌面并浏览! 服务器将启动并侦听指定端口(默认值:3000)。
故障排除
- 如果您遇到Puppeteer问题,请确保您的系统上安装了必要的依赖项。请参阅 Puppeter故障排除指南 了解更多信息。
- 如果使用Steel云服务,请确保Steel API密钥有效并具有必要的权限。
- 如果使用本地Steel实例,请确保它正在运行,并且可以在指定的URL(如果是自定义的)或默认的本地地址访问。
有关更详细的配置选项和高级用法,请参阅Steel文档和Puppeteer API参考资料。