Files
MCP-Browser/README.md
T
jfeng d8796531ee feat: MCP Browser v3.1.1 - 56+ tools, visual overlays, fixes
- Added 9 new tools: visual overlay, highlight, toast, drag-drop, etc.
- Fixed evaluateJS to support function arguments
- Fixed hover for non-visible elements
- Fixed storage operations with try/catch
- Added 10 new wait tools: clickable, element visible, text
- Fixed tool name mapping in server.js for MCP protocol
- Updated README with 60+ tools documentation
- Version bump to 3.1.1
2026-04-07 16:29:38 -03:00

273 lines
6.8 KiB
Markdown

# MCP-Browser v3.1.1
MCP server para automação de navegador de alta qualidade usando [Playwright](https://playwright.dev/) com **60+ tools** para automação avançada.
![Node](https://img.shields.io/badge/Node.js-18+-339933?logo=node.js&logoColor=white)
![MCP](https://img.shields.io/badge/MCP-stdio-blue)
![Platform](https://img.shields.io/badge/Windows%20|%20Linux%20|%20macOS-lightgrey)
![Tools](https://img.shields.io/badge/60%2B%20tools-green)
## Novidades v3.1.1
- **Correções de bugs** - hover, storage, evaluateJS com argumentos
- **Melhor responsividade** - Visual overlay adaptável para mobile/tablet
- **Stealth Mode** - Anti-detecção avançada
- **60+ ferramentas** - Cobertura completa de automação
## Instalação
```bash
npm install
npx playwright install chromium
```
## Configuração
```bash
node server.js
```
## Tools Disponíveis (60+)
### Navegação
| Tool | Descrição |
|------|-----------|
| `open_url` | Abre URL |
| `new_tab` | Nova aba |
| `switch_tab` | Troca aba |
| `list_tabs` | Lista abas |
| `close_tab` | Fecha aba |
| `go_back` | Voltar |
| `go_forward` | Avançar |
| `reload` | Recarregar |
| `wait_for_url` | Espera URL |
### Interação
| Tool | Descrição |
|------|-----------|
| `click` | Clica (suporta duplo, right-click) |
| `smart_click` | Clica por texto |
| `type` | Digita (suporta lentamente) |
| `smart_type` | Digita por label |
| `hover` | Faz hover |
| `select` | Seleciona opção |
| `press_key` | Pressiona tecla |
| `scroll_to` | Rola página (top/bottom/selector/px) |
| `drag_and_drop` | Arrasta e solta elemento |
| `upload_file` | Upload de arquivo |
### Extração
| Tool | Descrição |
|------|-----------|
| `get_text` | Extrai texto |
| `get_html` | Extrai HTML |
| `get_links` | Lista links |
| `get_buttons` | Lista botões |
| `get_forms` | Lista formulários |
| `extract_elements` | Extrai elementos |
| `get_input_values` | Obtém valores de inputs |
| `get_url` | URL atual |
| `get_title` | Título da página |
| `evaluate_js` | Executa JavaScript |
### Screens & PDF
| Tool | Descrição |
|------|-----------|
| `screenshot` | Screenshot (full/elemento) |
| `annotated_screenshot` | Screenshot com elementos highlights |
| `pdf` | Gera PDF |
### Visuais & Overlay
| Tool | Descrição |
|------|-----------|
| `enable_visual_overlay` | Ativa cursor customizado + indicadores |
| `highlight_element` | Destaca elemento com animação |
| `show_toast` | Notificação toast na página |
### Viewport & Device
| Tool | Descrição |
|------|-----------|
| `set_viewport` | Define viewport |
| `emulate_device` | Emula dispositivo |
### Cookies & Storage
| Tool | Descrição |
|------|-----------|
| `get_cookies` | Obtém cookies |
| `set_cookies` | Define cookies |
| `clear_cookies` | Limpa cookies |
| `get_storage` | Obtém storage |
| `set_storage` | Define storage |
| `clear_storage` | Limpa storage |
### Network
| Tool | Descrição |
|------|-----------|
| `get_network_logs` | Logs de rede |
| `block_resources` | Bloqueia recursos |
### Performance
| Tool | Descrição |
|------|-----------|
| `get_performance_metrics` | Métricas |
### Wait
| Tool | Descrição |
|------|-----------|
| `wait` | Aguarda ms |
| `wait_for_selector` | Espera elemento |
| `wait_for_element_visible` | Espera elemento visível |
| `wait_for_clickable` | Espera elemento clicável |
| `wait_for_text` | Espera texto aparecer |
### Automação
| Tool | Descrição |
|------|-----------|
| `fill_form_auto` | Preenche formulário |
| `agent_flow` | Fluxo automático |
| `agent_flow_v2` | Fluxo com retry |
### Controle
| Tool | Descrição |
|------|-----------|
| `close_browser` | Fecha navegador |
## Exemplo de Uso
```javascript
// Abrir site
open_url("https://example.com")
// Login automático
fill_form_auto({"email": "user@test.com", "password": "123"})
smart_click("Entrar")
wait_for_url("**dashboard**")
// Destacar elemento
highlight_element("button.submit")
// Screenshot com anotações
annotated_screenshot({highlight: [".product-card", ".buy-button"]})
// Extrair dados
get_links()
get_text(".product-title")
// Emular mobile
emulate_device("iphone-14")
```
## Dispositivos Disponíveis
- iphone-se, iphone-14, iphone-14-pro-max
- ipad, ipad-pro
- pixel-5, galaxy-s20, galaxy-s23-ultra
- desktop-1080p, desktop-4k
## Estrutura
```
MCP-Browser/
├── server.js # Servidor MCP
├── browser.js # Engine Playwright
├── package.json
└── tools/ # 60+ tools
├── openUrl.js
├── click.js
├── type.js
├── screenshot.js
├── getText.js
├── getLinks.js
├── waitForSelector.js
├── extractElements.js
├── smartClick.js
├── smartType.js
├── getButtons.js
├── smartWaitNavigation.js
├── getForms.js
├── fillFormAuto.js
├── agentFlow.js
├── agentFlowV2.js
├── closeBrowser.js
├── getURL.js
├── getTitle.js
├── getHTML.js
├── goBack.js
├── goForward.js
├── reload.js
├── evaluateJS.js
├── waitForURL.js
├── newTab.js
├── switchTab.js
├── listTabs.js
├── closeTab.js
├── setViewport.js
├── emulateDevice.js
├── hover.js
├── select.js
├── pressKey.js
├── scrollTo.js
├── pdf.js
├── getCookies.js
├── setCookies.js
├── clearCookies.js
├── getStorage.js
├── setStorage.js
├── clearStorage.js
├── getNetworkLogs.js
├── blockResources.js
├── uploadFile.js
├── getPerformanceMetrics.js
├── wait.js
├── enableVisualOverlay.js
├── showToast.js
├── highlightElement.js
├── dragAndDrop.js
├── annotatedScreenshot.js
├── getInputValues.js
├── waitForClickable.js
├── waitForElementVisible.js
└── waitForText.js
```
## Sugestões de Novas Funcionalidades Premium
### 1. Gravação e Replay de Ações
- Gravar sequência de ações (click, type, scroll)
- Replay automatizado com timing
- Exportar/importar scripts
### 2. OCR e Detecção Visual
- Detectar texto em imagens (Tesseract)
- Identificar elementos por imagem
- Screenshots AI-driven
### 3. Integração com IA
- Análise de página com LLM
- Auto-complete de ações
- Detecção de formulários智能化
### 4. Proxy Rotativo
- Múltiplos proxies
- Rotação automática
-Geo-targeting
### 5. Sessões Persistentes
- Salvar/carregar estado
- Snapshot de abas
- Backup de cookies
### 6. Webhooks e Eventos
- Notificações em tempo real
- Monitoramento de mudanças
- Integração com Zapier
### 7. headless + UI Mode
- Alternar entre headless/visible
- DevTools integrado
- Debug visual
## Licença
MIT