Skip to main content
Glama
xrntkk
by xrntkk

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_appsA

List installed Electron apps discovered on a target (local machine by default). Returns app id, name and executable path. Use the app id with launch_app.

launch_appA

Launch an Electron app with debug ports (--inspect for the main process, --remote-debugging-port for renderers) and create a debug session. Provide either appId (from list_apps) or a direct exePath. Returns the sessionId and debug ports.

stop_sessionA

Stop a debug session: close CDP connections and terminate the app process. Safe to call twice.

list_sessionsA

List active debug sessions with their app, status and debug ports.

get_app_infoA

Get Electron app details from the main process: Electron/Chromium/Node versions, app name/version, standard paths (userData etc.), and the list of BrowserWindows with title, URL and bounds.

monitor_ipcA

Start or stop IPC monitoring in the main process. Captures ipcMain messages (send/invoke) and webContents.send traffic into a buffer; read it with get_ipc_log. Note: invoke handlers registered before monitoring started are not captured (Electron dispatches them internally); 'send' messages are always captured.

get_ipc_logA

Read IPC traffic captured by monitor_ipc. Optionally clears the buffer after reading.

monitor_eventsA

Start or stop capturing Electron lifecycle events in the main process: render-process-gone (crashes), unresponsive, navigation (did/will-navigate, redirects), window and webContents creation, child-process-gone. Read with get_event_log.

get_event_logA

Read Electron lifecycle events captured by monitor_events (crashes, hangs, navigation, window/webContents lifecycle). Optionally clears the buffer after reading.

get_process_metricsA

Get per-process CPU and memory metrics of the app (app.getAppMetrics): Browser (main), renderer, GPU and utility processes with pid, CPU % and working set size.

evaluate_in_mainA

Evaluate a JavaScript expression in the app's main (Node/Electron) process via the inspector protocol. Electron APIs like require('electron').app or BrowserWindow are available.

evaluate_in_rendererA

Evaluate a JavaScript expression in a renderer page via CDP. Use list_pages to find page ids.

list_pagesA

Refresh and list the debuggable targets of a session: renderer pages, webviews, workers, service workers. Pages can take a few seconds to appear after launch — retry if empty. Page-only tools (screenshot, DOM, input) do not work on worker targets.

get_process_logsC

Get the app process stdout/stderr output captured since launch. Works even after the process has exited.

get_console_logsB

Get console messages and uncaught exceptions captured from the main process and renderer pages (console.* calls, CDP log entries).

get_network_logA

Get network requests captured from renderer pages (Network domain). A page's requests are recorded once any page tool has attached to it. Entries include requestId for get_response_body.

get_response_bodyA

Get the response body of a captured network request. Use get_network_log to find requestIds. Only works for requests whose loading has finished while a page client was attached.

get_cookiesA

Get cookies from the browser network stack visible to a page (Network.getAllCookies). Includes HttpOnly cookies that document.cookie cannot see.

get_local_storageB

Read localStorage or sessionStorage entries of a renderer page.

navigateA

Navigate a renderer page to a URL. Waits up to 5s for the load event (non-fatal).

reloadC

Reload a renderer page.

screenshotB

Capture a screenshot of a renderer page. Returns a PNG (default) or JPEG image.

get_dom_snapshotA

Get the outerHTML of a renderer page (or of a specific element via selector). Truncated to maxLength characters.

query_selectorA

Query a single element by CSS selector in a renderer page. Returns tag name, text, attributes and bounding rect.

clickA

Click in a renderer page, either by CSS selector (scrolled into view, clicked at its center) or by raw CSS-pixel coordinates.

typeA

Type text into a renderer page. If a selector is given, the element is clicked first to focus it. Uses Input.insertText, which is unicode-safe (CJK, emoji).

get_performance_metricsB

Get renderer performance metrics (Performance.getMetrics): JS heap size, DOM node count, layout/recalc counts, timestamps, etc.

set_breakpointA

Set a breakpoint by script URL or URL regex in the main process or a renderer page. Works on bundled scripts too — use urlRegex to match a distinctive part of the script path (e.g. "app.asar.*main"). Use get_paused_state to observe hits.

remove_breakpointA

Remove a breakpoint previously set with set_breakpoint.

list_breakpointsA

List breakpoints set via this server on the main process or a renderer page.

pauseA

Pause execution at the next statement in the main process or a renderer page.

resumeA

Resume execution after a pause or breakpoint hit.

get_paused_stateA

Get the current paused state (reason + call stack with callFrameIds) of the main process or a renderer page, if it is paused on a breakpoint or Debugger.pause.

list_scriptsA

List scripts known to the Debugger domain (collected via scriptParsed). Use urlFilter to narrow down, then get_script_source to read source code.

get_script_sourceB

Get the source code of a script by scriptId (from list_scripts). Useful for static analysis of app.asar bundles.

evaluate_on_call_frameA

Evaluate an expression in the context of a paused call frame (access local variables). Requires the target to be paused — get callFrameId from get_paused_state.

step_overA

Step over the current statement while paused. Use get_paused_state to observe the new location.

step_intoB

Step into the current function call while paused. Use get_paused_state to observe the new location.

step_outA

Step out of the current function while paused. Use get_paused_state to observe the new location.

get_heap_snapshotA

Take a V8 heap snapshot of the main process or a renderer page. The snapshot can be large, so it is written to a .heapsnapshot file (loadable in Chrome DevTools Memory panel); the file path is returned.

start_cpu_profileA

Start CPU profiling on the main process or a renderer page. Call stop_cpu_profile to collect the result.

stop_cpu_profileA

Stop CPU profiling and collect the profile. The full profile is written to a .cpuprofile file (loadable in Chrome DevTools Performance panel); a summary of the hottest functions is returned inline.

list_workersA

List worker targets (service workers, shared workers, dedicated workers) discovered via the browser-level Target domain. Use evaluate_in_worker to run JS in them.

evaluate_in_workerA

Evaluate a JavaScript expression in a worker target (service worker, shared worker, dedicated worker) using the flatten protocol. Get workerTargetId from list_workers.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/xrntkk/debugtron-mcp'

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