Skip to main content
Glama

钢铁傀儡师

一个模型上下文协议服务器,使用 Puppeteer 和 Steel 提供浏览器自动化功能。该服务器使 LLM 能够在真实的浏览器环境中与网页交互、截取屏幕截图并执行 JavaScript。

成分

工具

  • puppeteer_navigate

    • 导航到浏览器中的任意 URL

    • 输入:

      • url (字符串,必需):导航到的 URL

      • timeout (数字,可选,默认值:60000):导航超时(以毫秒为单位)

      • waitUntil (字符串,可选,默认值:“domcontentloaded”):何时判定导航成功。选项:“load”、“domcontentloaded”、“networkidle0”、“networkidle2”

  • puppeteer_screenshot

    • 捕获整个页面或特定元素的屏幕截图

    • 输入:

      • name (字符串,必需):屏幕截图的名称

      • selector (字符串,可选):要截图的元素的 CSS 选择器

  • puppeteer_click

    • 点击页面上的元素

    • 输入: selector (字符串,必需):要点击元素的 CSS 选择器

  • puppeteer_fill

    • 填写输入字段

    • 输入:

      • selector (字符串,必需):输入字段的 CSS 选择器

      • value (字符串,必需):要填充的值

  • puppeteer_select

    • 使用 SELECT 标签选择一个元素

    • 输入:

      • selector (字符串,必需):要选择的元素的 CSS 选择器

      • value (字符串,必需):要选择的值

  • puppeteer_hover

    • 悬停页面上的元素

    • 输入: selector (字符串,必需):用于悬停元素的 CSS 选择器

  • puppeteer_evaluate

    • 在浏览器控制台中执行 JavaScript

    • 输入: script (字符串,必需):要执行的 JavaScript 代码

  • puppeteer_get_content

    • 从当前页面提取内容

    • 输入: selector (字符串,可选):CSS 选择器,用于从特定元素获取内容。如果未提供,则返回整个页面内容。

  • puppeteer_scroll

    • 滚动页面以触发延迟加载

    • 输入:

      • scrollDelay (数字,可选,默认值:100):滚动之间的延迟(以毫秒为单位)

      • maxScrolls (数字,可选,默认值:50):最大滚动次数

资源

服务器提供两种类型资源的访问:

  1. 控制台日志console://logs

    • 浏览器控制台以文本格式输出

    • 包括来自浏览器的所有控制台消息

  2. 屏幕截图screenshot://<name>

    • 截图的 PNG 图像

    • 可通过捕获期间指定的屏幕截图名称访问

Related MCP server: Puppeteer MCP Server

主要特点

  • 使用 Puppeteer 实现浏览器自动化

  • Steel 集成用于浏览器会话管理

  • 控制台日志监控和捕获

  • 截图功能

  • JavaScript 执行

  • 基本网络交互(导航、点击、表单填写)

  • 使用令牌限制处理进行内容提取

  • 通过滚动实现延迟加载支持

  • 本地和远程 Steel 实例支持

配置

Claude桌面配置

要将 Steel Puppeteer 服务器与 Claude Desktop 一起使用,请将以下配置添加到您的 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 服务器:

  1. 安装依赖项:

    npm install
  2. 构建项目:

    npm run build
  3. 启动服务器:

    npm start
  4. 打开 Claude Desktop 并开始浏览!服务器将启动并监听指定端口(默认值:3000)。

故障排除

  • 如果您在使用 Puppeteer 时遇到问题,请确保您的系统上已安装必要的依赖项。有关更多信息,请参阅Puppeteer 故障排除指南

  • 如果使用 Steel 云服务,请确保您的 Steel API 密钥有效并具有必要的权限。

  • 如果使用本地 Steel 实例,请确保它在指定的 URL(如果是自定义的)或默认本地地址上运行并可访问。

有关更详细的配置选项和高级用法,请参阅 Steel 文档和 Puppeteer API 参考。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rdvo/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server