Playwright MCP

Controle um navegador para tarefas de automação e raspagem web usando Playwright.

Documentação

playwright-mcp

Wrapper do Playwright para MCP (Model Context Protocol). Este servidor permite que clientes com tecnologia LLM controlem um navegador para tarefas de automação.

Componentes

Recursos

O servidor expõe recursos para acessar capturas de tela do navegador:

  • URI do recurso de captura de tela: screenshot://{page_id}
  • Os recursos de captura de tela estão automaticamente disponíveis para todas as páginas abertas

Prompts

O servidor fornece um prompt para ajudar os clientes a interpretar páginas da web:

  • interpret-page: Analisa o conteúdo e a estrutura da página da web atual
    • Argumento opcional page_id para selecionar qual página interpretar
    • Argumento opcional focus para focar em aspectos específicos (completo, formulários, navegação, texto)
    • Retorna tanto a análise de texto quanto uma captura de tela da página

Ferramentas

O servidor implementa um conjunto abrangente de ferramentas de automação de navegador:

  • Navegação no navegador

    • navigate: Ir para uma URL específica
    • new_page: Criar uma nova página do navegador com um ID específico
    • switch_page: Alternar para uma página diferente do navegador
    • get_pages: Listar todas as páginas disponíveis do navegador
  • Interação com a página

    • click: Clicar em um elemento usando seletor CSS
    • type: Digitar texto em um elemento de entrada
    • wait_for_selector: Aguardar um elemento aparecer na página
  • Extração de conteúdo

    • get_text: Obter conteúdo de texto de um elemento
    • get_page_content: Obter o HTML completo da página
    • take_screenshot: Capturar o estado visual da página ou do elemento

Configuração

Instalar Dependências

uv add playwright
playwright install chromium

Início Rápido

Instalação

Claude Desktop

No MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
No Windows: %APPDATA%/Claude/claude_desktop_config.json

Desenvolvimento/Configuração de Servidores Não Publicados
"mcpServers": {
  "playwright-mcp": {
    "command": "uv",
    "args": [
      "--directory",
      "/Users/shannon/Workspace/artivus/playwright-mcp",
      "run",
      "playwright-mcp"
    ]
  }
}
Configuração de Servidores Publicados
"mcpServers": {
  "playwright-mcp": {
    "command": "uvx",
    "args": [
      "playwright-mcp"
    ]
  }
}

Desenvolvimento

Compilação e Publicação

Para preparar o pacote para distribuição:

  1. Sincronize as dependências e atualize o lockfile:
uv sync
  1. Compile as distribuições do pacote:
uv build

Isso criará distribuições de origem e wheel no diretório dist/.

  1. Publique no PyPI:
uv publish

Nota: Você precisará definir as credenciais do PyPI por meio de variáveis de ambiente ou flags de comando:

  • Token: --token ou UV_PUBLISH_TOKEN
  • Ou nome de usuário/senha: --username/UV_PUBLISH_USERNAME e --password/UV_PUBLISH_PASSWORD

Depuração

Como os servidores MCP são executados via stdio, a depuração pode ser desafiadora. Para a melhor experiência de depuração, recomendamos fortemente o uso do MCP Inspector.

Você pode iniciar o MCP Inspector via npm com este comando:

npx @modelcontextprotocol/inspector uv --directory /Users/shannon/Workspace/artivus/playwright-mcp run playwright-mcp

Ao iniciar, o Inspector exibirá uma URL que você pode acessar no seu navegador para começar a depuração.