Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SCREEN_CONTROL_TOKENNoOptionally set the auth token for the server. By default it is auto-generated and written to .token file on startup.

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
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_infoA

Server/PC status: screen size, monitors, OCR availability, failsafe and game-mode state.

ocr_screenA

Read the screen as text with coordinates (OCR). Best for menus, dialogs, editors, chat — anything text-heavy. Returns lines plus per-item centers for clicking. 'region' is an optional "x,y,w,h" crop.

screenshotA

Capture the screen as an image (for vision-capable models). 'region' = "x,y,w,h"; 'scale' 0-1 shrinks to save bandwidth; 'quality' 1-100.

motion_diffA

Text-only change detection between two snapshots: which tiles of the screen changed and their clickable centers. Use to verify an action had an effect or to spot movement without OCR/vision.

mouseB

Control the mouse. action: move | click | scroll | drag | down | up. click uses x,y (optional = current pos); drag goes (x1,y1)->(x,y); scroll uses 'clicks' (negative = down). Physical-pixel coordinates.

keyboardA

Control the keyboard. action: press | hotkey | type | down | up. press: key name (enter, f11, a...); hotkey: keys=["ctrl","s"]; type: Unicode-safe text. expect_hwnd refuses (409) the action if the foreground window differs — use it to avoid typing into the wrong app.

get_heldA

List currently held keys/buttons and watchdog status.

release_allA

Release every held key and button (emergency reset). Safe to call anytime.

window_childrenA

List child controls of a window (class name, title, hwnd). Useful for classic Win32 apps with real child controls (e.g. an Edit box) — target the child hwnd in window_post. Modern WinUI/UWP apps have no classic children; use window_input_mode to detect them.

list_windowsA

List visible top-level windows: hwnd, title, process name, pid.

focus_windowB

Bring a window to the foreground (focus it).

window_input_modeA

Classify how a window receives input BEFORE posting to it: postmessage (classic Win32) | uia (WinUI/UWP: focus+SendInput fallback) | focused (already foreground) | invalid (dead window).

window_postB

Send input to a window in the background. action: type | key | hotkey | click | scroll. mode: auto (recommended — routes WinUI/UWP apps through the focused SendInput path automatically) | background | focused. Note: 'uia' routing focuses the window (unavoidable for modern apps).

window_capture_ocrA

Capture a background window WITHOUT focusing it; with ocr=1 (default) returns its text directly — read other apps' content while the user works.

close_windowA

Close a window safely (WM_CLOSE after verification — never blind Alt+F4). Pass expect_title/expect_process to refuse (409) if the window changed.

gameB

Game mode for FPS-style control. action: start (clip cursor to center) | move (relative camera look by dx,dy pixels * sensitivity) | stop | heartbeat (keep-alive during long holds). Combine with keyboard() down/up for WASD and mouse(action='down'/'up') for shooting/building.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 16 tools

Disambiguation5/5

Each tool targets a distinct mechanism—screen capture, OCR, motion detection, global input, window-specific input, window introspection, and game mode. Potentially similar tools like ocr_screen and window_capture_ocr are cleanly separated by foreground screen versus background window. No two tools appear to do the same job.

Naming Consistency4/5

Most tools follow a readable snake_case convention with verb-first names like list_windows, focus_window, close_window, and release_all. A few noun-style names like mouse, keyboard, and game, plus window_post and window_capture_ocr, are minor deviations but still clear and predictable.

Tool Count4/5

Sixteen tools is on the higher end but each earns its place across capture, OCR, input, window management, and game mode. The count feels slightly heavy but remains well-scoped for a desktop automation server.

Completeness4/5

Core workflows are well covered: screen capture, OCR, change detection, global and background input, window discovery, focusing, posting, and closing. Minor gaps like querying the current cursor position or window geometry are absent but most operations have workarounds.

Maintenance

ActivityMaintained
ResponsivenessNo issues