Skip to main content
Glama
zulfiqar90

Selenium MCP Server

by zulfiqar90

Selenium MCP Server

A Model Context Protocol (MCP) server that provides browser automation capabilities using Selenium WebDriver.

Features

  • Browser Automation: Navigate, click, type, and interact with web pages

  • Element Interaction: Find elements by CSS selectors, wait for elements, get text content

  • Screenshots: Capture screenshots of the current page

  • JavaScript Execution: Execute custom JavaScript in the browser

  • Page Information: Get page title and current URL

  • Headless Mode: Run browser in headless mode for CI/CD environments

Related MCP server: mcp-chrome-server

Prerequisites

  • Node.js (v16 or higher)

  • Chrome browser (for WebDriver)

  • npm

Installation

  1. Install dependencies:

npm install
  1. Configure the server by editing config.json:

{
  "selenium": {
    "browser": "chrome",
    "headless": true,
    "timeout": 30000,
    "windowSize": {
      "width": 1920,
      "height": 1080
    }
  }
}

Usage

Starting the Server

npm start

The server runs on stdio and communicates using the MCP protocol.

Available Tools

The server provides the following tools:

  1. navigate - Navigate to a URL

    • Parameters: url (string, required)

  2. click - Click on an element

    • Parameters: selector (string, required) - CSS selector

  3. type - Type text into an element

    • Parameters: selector (string, required), text (string, required)

  4. get_text - Get text content of an element

    • Parameters: selector (string, required)

  5. wait_for_element - Wait for an element to be present

    • Parameters: selector (string, required), timeout (number, optional)

  6. screenshot - Take a screenshot

    • Parameters: filename (string, optional)

  7. get_title - Get the page title

    • Parameters: none

  8. get_url - Get the current URL

    • Parameters: none

  9. execute_script - Execute JavaScript

    • Parameters: script (string, required)

  10. close_browser - Close the browser session

    • Parameters: none

Configuration

Edit config.json to customize:

  • browser: Browser to use (chrome, firefox, etc.)

  • headless: Run in headless mode (true/false)

  • timeout: Default timeout for operations (milliseconds)

  • windowSize: Browser window dimensions

Example Usage

Here's an example of how to use the server tools:

  1. Navigate to a page:

navigate: { "url": "https://example.com" }
  1. Wait for an element:

wait_for_element: { "selector": "#login-button" }
  1. Type into an input:

type: { "selector": "#username", "text": "user123" }
  1. Click a button:

click: { "selector": "#login-button" }
  1. Take a screenshot:

screenshot: { "filename": "login.png" }
  1. Close the browser:

close_browser: {}

Troubleshooting

  • Ensure Chrome browser is installed

  • Make sure ChromeDriver is compatible with your Chrome version

  • Check that the port in config.json is not already in use

  • Verify Node.js version is 16 or higher

License

ISC

AI_Automation_Framework_With_MCP_Server

This is an Automation framework which is built with AI using MCP Server,Java MCP Client and Automated Flows of Google Search

F
license - not found
-
quality - not tested
-
maintenance - not tested

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/zulfiqar90/AI_Automation_Framework_With_MCP_Server'

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