VOOZH about

URL: https://glama.ai/mcp/servers/themindmod/selenium-mcp-server?locale=es-ES

⇱ Servidor Selenium MCP by themindmod | Glama


Servidor Selenium MCP

insignia de herrería

Un servidor MCP que usa Selenium para interactuar con una instancia de WebDriver. Creado con la plantilla MCP-Server-Starter .

Descripción general

Este servidor permite que los agentes de IA controlen una sesión de navegador web a través de Selenium WebDriver, lo que habilita tareas como raspado web, pruebas automatizadas y llenado de formularios a través del Protocolo de contexto de modelo.

Related MCP server: Selenium MCP Server

Componentes principales

  • Servidor MCP : expone las acciones de Selenium WebDriver como herramientas MCP.

  • Selenium WebDriver : interactúa con el navegador.

  • Clientes MCP : hosts de IA (como Cursor, Claude Desktop) que pueden utilizar las herramientas expuestas.

Prerrequisitos

  • Node.js (v18 o posterior)

  • npm (v7 o posterior)

  • Un ejecutable WebDriver (por ejemplo, ChromeDriver, GeckoDriver) instalado y disponible en la RUTA de su sistema.

  • Un navegador web compatible (por ejemplo, Chrome, Firefox).

Empezando

  1. Clonar el repositorio:

    git clone <your-repo-url> selenium-mcp-server
    cd selenium-mcp-server
  2. Instalar dependencias:

    npm install
  3. Configurar WebDriver:

    • Asegúrese de que su WebDriver (por ejemplo, chromedriver ) esté instalado y en su RUTA.

    • Modifique src/seleniumService.ts (creará este archivo) si es necesario para especificar las opciones del navegador o las rutas de WebDriver.

  4. Construir el servidor:

    npm run build
  5. Ejecutar el servidor:

    npm start

    Alternativamente, intégrelo con un host MCP como Cursor o Claude Desktop (consulte las secciones de Integración a continuación).

Herramientas

Este servidor proporcionará herramientas como:

  • selenium_navigate : navega el navegador a una URL específica.

  • selenium_findElement : encuentra un elemento en la página usando un selector CSS.

  • selenium_click : hace clic en un elemento.

  • selenium_sendKeys : envía pulsaciones de teclas a un elemento.

  • selenium_getPageSource : recupera el código HTML de la página actual.

  • (Agregue más herramientas según sea necesario)

Implementación de TypeScript

El servidor utiliza las bibliotecas @modelcontextprotocol/sdk y selenium-webdriver .

import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { Builder, By, Key, until, WebDriver } from 'selenium-webdriver';

// Basic server setup (details in src/index.ts)
const server = new Server({
 name: "selenium-mcp-server",
 version: "0.1.0",
 capabilities: {
 tools: {}, // Enable tools capability
 }
});

// Selenium WebDriver setup (details in src/seleniumService.ts)
let driver: WebDriver;

async function initializeWebDriver() {
 driver = await new Builder().forBrowser('chrome').build(); // Or 'firefox', etc.
}

// Example tool implementation (details in src/tools/)
server.registerTool('selenium_navigate', {
 description: 'Navigates the browser to a specific URL.',
 inputSchema: { /* ... zod schema ... */ },
 outputSchema: { /* ... zod schema ... */ },
 handler: async (params) => {
 await driver.get(params.url);
 return { success: true };
 }
});

// Connect transport
async function startServer() {
 await initializeWebDriver();
 const transport = new StdioServerTransport();
 await server.connect(transport);
 console.log("Selenium MCP Server connected via stdio.");

 // Graceful shutdown
 process.on('SIGINT', async () => {
 console.log("Shutting down WebDriver...");
 if (driver) {
 await driver.quit();
 }
 process.exit(0);
 });
}

startServer();

Desarrollo

  • Construir: npm run build

  • Ejecutar: npm start (ejecuta node build/index.js )

  • Pelusa: npm run lint

  • Formato: npm run format

Depuración

Utilice el Inspector MCP o las técnicas de depuración estándar de Node.js.

Integración con hosts MCP

(Conserve las secciones relevantes del README original para Cursor, Claude Desktop, Smithery, etc., actualizando rutas y comandos según sea necesario)

Integración del cursor

  1. Construye tu servidor : npm run build

  2. En el cursor: Settings > Features > MCP : agregar un nuevo servidor MCP.

  3. Registra tu servidor :

    • Seleccione stdio como tipo de transporte.

    • Nombre: Selenium Server (o similar).

    • Comando: node /path/to/selenium-mcp-server/build/index.js .

  4. Ahorrar .

Integración de escritorio de Claude

  1. Construye tu servidor : npm run build

  2. Modificar claude_desktop_config.json :

    {
     "mcpServers": {
     "selenium-mcp-server": {
     "command": "node",
     "args": [
     "/path/to/selenium-mcp-server/build/index.js"
     ]
     }
     }
    }
  3. Reinicie Claude Desktop .

Mejores prácticas

  • Utilice TypeScript y Zod para la seguridad y validación de tipos.

  • Mantenga las herramientas modulares (por ejemplo, un archivo por herramienta en src/tools/ ).

  • Maneje los errores de WebDriver con elegancia (por ejemplo, elemento no encontrado, problemas de navegación).

  • Asegúrese de que WebDriver se apague correctamente (por ejemplo, driver.quit() al salir del servidor).

  • Siga las mejores prácticas de MCP para esquemas, manejo de errores y tipos de contenido.

Más información

Créditos

Basado en la plantilla creada por Seth Rose :

A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/themindmod/selenium-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server