Skip to main content
Glama
lazy-dinosaur

electron-test-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
connectB

Connect to already running Electron app via CDP (e.g., bun run dev:local with --remote-debugging-port)

launchB

Launch Electron app for testing (builds and runs fresh instance)

disconnectA

Disconnect from CDP (does not close the app)

closeA

Close the Electron app (only works with launch, not connect)

screenshotC

Take a screenshot of the current window

snapshotB

Get accessibility tree snapshot of the page (for finding elements)

clickC

Click an element

fillC

Fill text into an input field

typeA

Type text character by character (triggers key events)

hoverC

Hover over an element

pressC

Press a keyboard key

waitC

Wait for an element or condition

getTextC

Get text content of an element

evaluateC

Execute JavaScript in the renderer process

evaluateMainC

Execute code in the Electron main process

dragC

Drag and drop from source to target element

selectOptionC

Select option(s) from a dropdown

getAttributeC

Get attribute value of an element

isVisibleC

Check if element is visible

countC

Count elements matching selector

scrollC

Scroll the page using mouse wheel

scrollToC

Scroll to absolute position on the page

scrollIntoViewC

Scroll element into view

mouseMoveC

Move mouse cursor to specific coordinates

mouseDownC

Press mouse button down

mouseUpC

Release mouse button

mouseClickC

Click at specific coordinates (without selector)

dblclickC

Double-click an element

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.9/5.0

Scored across 28 tools

Disambiguation4/5

Most tools target clearly distinct actions (click vs fill vs hover vs drag), and the lifecycle tools connect/launch/close/disconnect are well separated. However, there is real overlap among scroll, scrollTo, and scrollIntoView, and click vs mouseClick vs dblclick, which could cause misselection without careful reading.

Naming Consistency2/5

The set mixes snake_case-adjacent single words (connect, launch, screenshot, click, fill) with camelCase (getText, selectOption, getAttribute, isVisible, scrollIntoView, mouseMove, mouseClick) and an odd unseparated 'dblclick'. No single predictable verb_noun or verbNoun convention holds throughout.

Tool Count3/5

28 tools is heavy for the scope and includes highly granular primitives (mouseMove, mouseDown, mouseUp, mouseClick, scroll/scrollTo/scrollIntoView) that could be consolidated. It is defensible for a full automation harness but sits at the cumbersome end.

Completeness4/5

Covers the lifecycle (connect/launch/close/disconnect), inspection (screenshot, snapshot, getText, getAttribute, isVisible, count), and rich interaction plus JS evaluation in both renderer and main process. Minor gaps like file upload, navigation/wait-for-navigation, and iframe handling exist but are workaroundable.

Maintenance

ActivityInactive
ResponsivenessNo issues