Puppeteer

Um servidor para automação de navegador usando Puppeteer, permitindo raspagem web, capturas de tela e execução de JavaScript.

Documentação

Puppeteer

Um servidor Model Context Protocol que fornece capacidades de automação de navegador usando Puppeteer. Este servidor permite que LLMs interajam com páginas web, tirem capturas de tela e executem JavaScript em um ambiente de navegador real.

Componentes

Ferramentas

  • puppeteer_navigate

    • Navegar para qualquer URL no navegador
    • Entrada: url (string)
  • puppeteer_screenshot

    • Capturar capturas de tela da página inteira ou de elementos específicos
    • Entradas:
      • name (string, obrigatório): Nome para a captura de tela
      • selector (string, opcional): Seletor CSS para o elemento a ser capturado
      • width (number, opcional, padrão: 800): Largura da captura de tela
      • height (number, opcional, padrão: 600): Altura da captura de tela
  • puppeteer_click

    • Clicar em elementos na página
    • Entrada: selector (string): Seletor CSS para o elemento a ser clicado
  • puppeteer_hover

    • Passar o mouse sobre elementos na página
    • Entrada: selector (string): Seletor CSS para o elemento a ser destacado
  • puppeteer_fill

    • Preencher campos de entrada
    • Entradas:
      • selector (string): Seletor CSS para o campo de entrada
      • value (string): Valor a ser preenchido
  • puppeteer_select

    • Selecionar um elemento com a tag SELECT
    • Entradas:
      • selector (string): Seletor CSS para o elemento a ser selecionado
      • value (string): Valor a ser selecionado
  • puppeteer_evaluate

    • Executar JavaScript no console do navegador
    • Entrada: script (string): Código JavaScript a ser executado

Recursos

O servidor fornece acesso a dois tipos de recursos:

  1. Logs do Console (console://logs)

    • Saída do console do navegador em formato de texto
    • Inclui todas as mensagens do console do navegador
  2. Capturas de Tela (screenshot://<name>)

    • Imagens PNG das capturas de tela realizadas
    • Acessíveis pelo nome da captura de tela especificado durante a captura

Principais Recursos

  • Automação de navegador
  • Monitoramento de logs do console
  • Capacidades de captura de tela
  • Execução de JavaScript
  • Interação básica com a web (navegação, cliques, preenchimento de formulários)

Configuração para usar o Servidor Puppeteer

Aqui está a configuração do Claude Desktop para usar o servidor Puppeteer:

Docker

NOTA A implementação via docker usará chromium headless, enquanto a versão NPX abrirá uma janela do navegador.

{
  "mcpServers": {
    "puppeteer": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--init",
        "-e",
        "DOCKER_CONTAINER=true",
        "mcp/puppeteer"
      ]
    }
  }
}

NPX

{
  "mcpServers": {
    "puppeteer": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-puppeteer"]
    }
  }
}

Build

Build Docker:

docker build -t mcp/puppeteer -f src/puppeteer/Dockerfile .

Licença

Este servidor MCP é licenciado sob a Licença MIT. Isso significa que você está livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.