Serveur Mcp Playwright
Serveur MCP pour l'automatisation du navigateur utilisant Playwright
Aperçu
Qu'est-ce que MCP-Server-Playwright ?
MCP-Server-Playwright est un serveur innovant conçu pour l'automatisation des navigateurs utilisant Playwright, une bibliothèque puissante qui permet aux développeurs d'automatiser des applications web sur différents navigateurs. Ce projet est particulièrement utile pour les tests et le web scraping, permettant aux utilisateurs de simuler des interactions utilisateur et de collecter des données efficacement.
Caractéristiques de MCP-Server-Playwright
- Support Multi-Navigateurs : MCP-Server-Playwright prend en charge plusieurs navigateurs, y compris Chrome, Firefox et Safari, garantissant que vos scripts d'automatisation peuvent s'exécuter sans problème dans différents environnements.
- Installation Facile : Le serveur est conçu pour une installation et une configuration rapides, le rendant accessible aux développeurs de tous niveaux de compétence.
- API Robuste : Il fournit une API complète qui permet un contrôle détaillé sur les interactions avec le navigateur, y compris la navigation, la sélection d'éléments et la gestion des événements.
- Mode Sans Tête : Les utilisateurs peuvent exécuter des tests en mode sans tête, ce qui est idéal pour les pipelines CI/CD et les environnements où une interface graphique n'est pas disponible.
- Documentation Étendue : Le projet est accompagné d'une documentation complète, facilitant le démarrage des développeurs et l'utilisation efficace de toutes les fonctionnalités.
Comment utiliser MCP-Server-Playwright
- Installation : Commencez par cloner le dépôt depuis GitHub :
git clone https://github.com/Automata-Labs-team/MCP-Server-Playwright.git cd MCP-Server-Playwright
- Dépendances : Installez les dépendances nécessaires en utilisant npm ou yarn :
npm install
- Exécution du Serveur : Démarrez le serveur avec la commande suivante :
npm start
- Création de Scripts d'Automatisation : Écrivez vos scripts d'automatisation en utilisant l'API fournie. Voici un exemple simple pour naviguer vers une page 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(); })();
- Tests et Débogage : Utilisez les outils de débogage intégrés pour tester vos scripts et vous assurer qu'ils fonctionnent comme prévu.
Questions Fréquemment Posées
Qu'est-ce que Playwright ?
Playwright est une bibliothèque d'automatisation open-source développée par Microsoft qui permet aux développeurs d'automatiser des applications web sur différents navigateurs. Elle prend en charge les fonctionnalités modernes des applications web et fournit une API riche pour l'interaction avec le navigateur.
Puis-je utiliser MCP-Server-Playwright pour le web scraping ?
Oui, MCP-Server-Playwright est bien adapté aux tâches de web scraping. Sa capacité à automatiser les actions du navigateur facilite l'extraction de données des pages web.
MCP-Server-Playwright est-il gratuit à utiliser ?
Absolument ! MCP-Server-Playwright est open-source et disponible pour que tout le monde puisse l'utiliser, le modifier et le distribuer sous la licence MIT.
Comment puis-je contribuer au projet ?
Les contributions sont les bienvenues ! Vous pouvez contribuer en soumettant des problèmes, des demandes de fonctionnalités ou des demandes de tirage sur le dépôt GitHub. Veuillez vous référer aux directives de contribution dans la documentation pour plus de détails.
Où puis-je trouver la documentation ?
La documentation de MCP-Server-Playwright est disponible dans le dépôt. Vous pouvez y accéder directement ici.
Détail
<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.
Configuration du serveur
{
"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": {}
}
}
}