Mcp Server Playwright
Servidor MCP para automação de navegador usando Playwright
Visão geral
O que é MCP-Server-Playwright?
MCP-Server-Playwright é um servidor inovador projetado para automação de navegadores usando o Playwright, uma poderosa biblioteca que permite aos desenvolvedores automatizar aplicações web em vários navegadores. Este projeto é particularmente útil para testes e raspagem de dados, permitindo que os usuários simulem interações de usuários e coletem dados de forma eficiente.
Recursos do MCP-Server-Playwright
- Suporte a Vários Navegadores: O MCP-Server-Playwright suporta múltiplos navegadores, incluindo Chrome, Firefox e Safari, garantindo que seus scripts de automação possam ser executados sem problemas em diferentes ambientes.
- Configuração Fácil: O servidor é projetado para instalação e configuração rápidas, tornando-o acessível para desenvolvedores de todos os níveis de habilidade.
- API Robusta: Ele fornece uma API abrangente que permite controle detalhado sobre interações do navegador, incluindo navegação, seleção de elementos e manipulação de eventos.
- Modo Sem Cabeça: Os usuários podem executar testes em modo sem cabeça, que é ideal para pipelines de CI/CD e ambientes onde uma interface gráfica não está disponível.
- Documentação Abrangente: O projeto vem com documentação completa, facilitando para os desenvolvedores começarem e utilizarem todos os recursos de forma eficaz.
Como Usar o MCP-Server-Playwright
- Instalação: Comece clonando o repositório do GitHub:
git clone https://github.com/Automata-Labs-team/MCP-Server-Playwright.git cd MCP-Server-Playwright
- Dependências: Instale as dependências necessárias usando npm ou yarn:
npm install
- Executando o Servidor: Inicie o servidor com o seguinte comando:
npm start
- Criando Scripts de Automação: Escreva seus scripts de automação usando a API fornecida. Aqui está um exemplo simples para navegar até uma página da web:
const { chromium } = require('playwright'); (async () => { const browser = await chromium.launch(); const page = await browser.newPage(); await page.goto('https://example.com'); await browser.close(); })();
- Testando e Depurando: Utilize as ferramentas de depuração integradas para testar seus scripts e garantir que eles funcionem como esperado.
Perguntas Frequentes
O que é o Playwright?
Playwright é uma biblioteca de automação de código aberto desenvolvida pela Microsoft que permite aos desenvolvedores automatizar aplicações web em diferentes navegadores. Ele suporta recursos modernos de aplicativos web e fornece uma API rica para interação com o navegador.
Posso usar o MCP-Server-Playwright para raspagem de dados?
Sim, o MCP-Server-Playwright é bem adequado para tarefas de raspagem de dados. Sua capacidade de automatizar ações do navegador facilita a extração de dados de páginas da web.
O MCP-Server-Playwright é gratuito para usar?
Absolutamente! O MCP-Server-Playwright é de código aberto e está disponível para qualquer pessoa usar, modificar e distribuir sob a licença MIT.
Como posso contribuir para o projeto?
Contribuições são bem-vindas! Você pode contribuir enviando problemas, solicitações de recursos ou pull requests no repositório do GitHub. Consulte as diretrizes de contribuição na documentação para mais detalhes.
Onde posso encontrar a documentação?
A documentação do MCP-Server-Playwright está disponível no repositório. Você pode acessá-la diretamente aqui.
Detalhe
<a href="https://glama.ai/mcp/servers/9q4zck8po5"><img width="380" height="200" src="https://glama.ai/mcp/servers/9q4zck8po5/badge" alt="MCP-Server-Playwright MCP server" /></a>
Table of Contents
Features
- 🌐 Full browser automation capabilities
- 📸 Screenshot capture of entire pages or specific elements
- 🖱️ Comprehensive web interaction (navigation, clicking, form filling)
- 📊 Console log monitoring
- 🔧 JavaScript execution in browser context
Installation
Installing via Smithery
To install MCP Server Playwright for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @automatalabs/mcp-server-playwright --client claude
You can install the package using either npx or mcp-get:
Using npx:
npx @automatalabs/mcp-server-playwright install
This command will:
- Check your operating system compatibility (Windows/macOS)
- Create or update the Claude configuration file
- Configure the Playwright server integration
The configuration file will be automatically created/updated at:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Using mcp-get:
npx @michaellatman/mcp-get@latest install @automatalabs/mcp-server-playwright
Configuration
The installation process will automatically add the following configuration to your Claude config file:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["-y", "@automatalabs/mcp-server-playwright"]
}
}
}
Using with Cursor
You can also use MCP Server Playwright with Cursor, an AI-powered code editor. To enable browser automation in Cursor via MCP:
-
Install Playwright browsers (if not already):
npx playwright install
-
Install MCP Server Playwright for Cursor using Smithery:
npx -y @smithery/cli install @automatalabs/mcp-server-playwright --client cursor
-
Configuration file setup:
If you do not use Claude, the configuration file (claude_desktop_config.json
) may not be created automatically.- On Windows, create a folder named
Claude
in%APPDATA%
(usuallyC:\Users\<YourName>\AppData\Roaming\Claude
). - Inside that folder, create a file named
claude_desktop_config.json
with the following content:
{ "serverPort": 3456 }
- On Windows, create a folder named
-
Follow the remaining steps in the Installation section above to complete the setup.
Now, you can use all the browser automation tools provided by MCP Server Playwright directly from Cursor’s AI features, such as web navigation, screenshot capture, and JavaScript execution.
Note: Make sure you have Node.js installed and
npx
available in your system PATH.
Components
Tools
browser_navigate
Navigate to any URL in the browser
{
"url": "https://stealthbrowser.cloud"
}
browser_screenshot
Capture screenshots of the entire page or specific elements
{
"name": "screenshot-name", // required
"selector": "#element-id", // optional
"fullPage": true // optional, default: false
}
browser_click
Click elements on the page using CSS selector
{
"selector": "#button-id"
}
browser_click_text
Click elements on the page by their text content
{
"text": "Click me"
}
browser_hover
Hover over elements on the page using CSS selector
{
"selector": "#menu-item"
}
browser_hover_text
Hover over elements on the page by their text content
{
"text": "Hover me"
}
browser_fill
Fill out input fields
{
"selector": "#input-field",
"value": "Hello World"
}
browser_select
Select an option in a SELECT element using CSS selector
{
"selector": "#dropdown",
"value": "option-value"
}
browser_select_text
Select an option in a SELECT element by its text content
{
"text": "Choose me",
"value": "option-value"
}
browser_evaluate
Execute JavaScript in the browser console
{
"script": "document.title"
}
Resources
-
Console Logs (
console://logs
)- Access browser console output in text format
- Includes all console messages from the browser
-
Screenshots (
screenshot://<n>
)- Access PNG images of captured screenshots
- Referenced by the name specified during capture
License
This project is licensed under the MIT License - see the LICENSE file for details.
Configuração do Servidor
{
"mcpServers": {
"mcp-server-playwright": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--automata-labs-team--mcp-server-playwright--mcp-server-playwright",
"node dist/index.js"
],
"env": {}
}
}
}