这是一个使用Puppeteer和Steel提供浏览器自动化能力的Model Context Protocol服务器。该服务器使LLMs能够与网页进行交互,抓取屏幕截图,并在真实的浏览器环境中执行JavaScript。
puppeteer_navigate
url (字符串,必需):要导航到的URLtimeout (数字,可选,默认值:60000):导航超时时间(以毫秒为单位)waitUntil (字符串,可选,默认值:"domcontentloaded"):何时认为导航成功。选项:"load", "domcontentloaded", "networkidle0", "networkidle2"puppeteer_screenshot
name (字符串,必需):屏幕截图的名称selector (字符串,可选):用于截取屏幕截图的CSS选择器puppeteer_click
selector (字符串,必需):要点击的元素的CSS选择器puppeteer_fill
selector (字符串,必需):输入字段的CSS选择器value (字符串,必需):要填写的值puppeteer_select
selector (字符串,必需):要选择的元素的CSS选择器value (字符串,必需):要选择的值puppeteer_hover
selector (字符串,必需):要悬停的元素的CSS选择器puppeteer_evaluate
script (字符串,必需):要执行的JavaScript代码puppeteer_get_content
selector (字符串,可选):从特定元素获取内容的CSS选择器。如果没有提供,则返回整个页面的内容puppeteer_scroll
scrollDelay (数字,可选,默认值:100):滚动之间的延迟(以毫秒为单位)maxScrolls (数字,可选,默认值:50):最大滚动次数该服务器提供了两种类型的资源访问:
控制台日志 (console://logs)
屏幕截图 (screenshot://<name>)
要在Claude Desktop中使用Steel Puppeteer服务器,请在您的Claude Desktop配置文件(通常位于macOS上的~/Library/Application Support/Claude/claude_desktop_config.json)中添加以下配置:
{
"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 Puppeteer服务器:
STEEL_LOCAL (可选,默认值:"false"):设置为"true"以使用本地Steel实例而不是云服务。STEEL_API_KEY (仅当STEEL_LOCAL为"false"时需要):使用云服务时的身份验证Steel API密钥。STEEL_URL (可选):如果您使用自定义部署,则为Steel实例的URL。如果您直接运行Steel Puppeteer服务器(不通过Claude Desktop),可以在您的shell中设置这些环境变量,或者在项目根目录创建一个.env文件。这里是一个用于本地使用的.env文件示例:
STEEL_LOCAL=true
如果您使用的是Steel云服务,您的.env文件看起来像这样:
STEEL_API_KEY=your-steel-api-key
STEEL_LOCAL=false
启动Steel Puppeteer服务器:
安装依赖项:
npm install
构建项目:
npm run build
启动服务器:
npm start
打开Claude Desktop并开始浏览! 服务器将在指定的端口(默认:3000)启动并监听。
有关更详细的配置选项和高级用法,请参阅Steel文档和Puppeteer API参考。 </中文翻译>