Mcp Server Playwright
MCP server per l'automazione del browser utilizzando Playwright
Panoramica
Cos'è MCP-Server-Playwright?
MCP-Server-Playwright è un server innovativo progettato per l'automazione del browser utilizzando Playwright, una potente libreria che consente agli sviluppatori di automatizzare le applicazioni web su vari browser. Questo progetto è particolarmente utile per il testing e il web scraping, consentendo agli utenti di simulare interazioni con l'utente e raccogliere dati in modo efficiente.
Caratteristiche di MCP-Server-Playwright
- Supporto Multi-Browser: MCP-Server-Playwright supporta più browser, tra cui Chrome, Firefox e Safari, garantendo che i tuoi script di automazione possano funzionare senza problemi in diversi ambienti.
- Installazione Facile: Il server è progettato per una rapida installazione e configurazione, rendendolo accessibile per sviluppatori di tutti i livelli di abilità.
- API Robusta: Fornisce un'API completa che consente un controllo dettagliato sulle interazioni del browser, inclusi navigazione, selezione degli elementi e gestione degli eventi.
- Modalità Headless: Gli utenti possono eseguire test in modalità headless, ideale per pipeline CI/CD e ambienti in cui non è disponibile un'interfaccia grafica.
- Documentazione Estesa: Il progetto è fornito di una documentazione approfondita, rendendo più facile per gli sviluppatori iniziare e utilizzare tutte le funzionalità in modo efficace.
Come Utilizzare MCP-Server-Playwright
- Installazione: Inizia clonando il repository da GitHub:
git clone https://github.com/Automata-Labs-team/MCP-Server-Playwright.git cd MCP-Server-Playwright
- Dipendenze: Installa le dipendenze necessarie utilizzando npm o yarn:
npm install
- Esecuzione del Server: Avvia il server con il seguente comando:
npm start
- Creazione di Script di Automazione: Scrivi i tuoi script di automazione utilizzando l'API fornita. Ecco un semplice esempio per navigare a una pagina 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(); })();
- Testing e Debugging: Utilizza gli strumenti di debugging integrati per testare i tuoi script e assicurarti che funzionino come previsto.
Domande Frequenti
Cos'è Playwright?
Playwright è una libreria di automazione open-source sviluppata da Microsoft che consente agli sviluppatori di automatizzare le applicazioni web su diversi browser. Supporta le funzionalità moderne delle app web e fornisce un'API ricca per l'interazione con il browser.
Posso usare MCP-Server-Playwright per il web scraping?
Sì, MCP-Server-Playwright è ben adatto per compiti di web scraping. La sua capacità di automatizzare le azioni del browser rende facile estrarre dati dalle pagine web.
MCP-Server-Playwright è gratuito da usare?
Assolutamente! MCP-Server-Playwright è open-source e disponibile per chiunque lo utilizzi, modifichi e distribuisca sotto la licenza MIT.
Come posso contribuire al progetto?
Le contribuzioni sono benvenute! Puoi contribuire segnalando problemi, richieste di funzionalità o pull request sul repository di GitHub. Si prega di fare riferimento alle linee guida per le contribuzioni nella documentazione per ulteriori dettagli.
Dove posso trovare la documentazione?
La documentazione per MCP-Server-Playwright è disponibile nel repository. Puoi accedervi direttamente qui.
Dettaglio
<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.
Configurazione Server
{
"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": {}
}
}
}