Skip to main content
Glama
adkdev200

Universal Computer Control MCP

by adkdev200

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

Tools

Functions exposed to the LLM to take actions

NameDescription
computer.observeA

Observe the current computer state: screen geometry, active window, cursor, OCR'd on-screen text and accessibility UI elements. Levels: 'minimal' (fast), 'normal' (screenshot+OCR+accessibility), 'full' (adds focused element details). This is the primary tool for understanding the screen before acting.

computer.screenshotA

Take a screenshot of the whole virtual desktop, a specific monitor or a [left, top, right, bottom] region. Saves it to the persistence directory and returns the path.

computer.get_ui_treeB

Get the accessibility tree of the active (or a named) window as a nested structure of roles, names and bounding boxes. Uses Windows UI Automation or Linux AT-SPI; returns an explanatory error when no accessibility backend is available.

computer.get_active_windowA

Get the title, application and process of the currently focused window.

computer.find_textA

Find text anywhere on screen (OCR + accessibility) with fuzzy matching. Returns matches with bounding boxes so you can click them. Tolerates case, arrows and small typos ('Continue' matches 'Continue →').

computer.find_visualA

Find a UI element visually: by image template name (from the configured template directory) or by natural-language description via the optional vision model. Returns a bounding box.

computer.wait_forA

Wait until something changes on screen. Expectations: 'any_change', 'window' (value = window title substring), 'text' (value = OCR text substring). Use after actions to await UI reactions instead of blind sleeps.

computer.clickA

Click a UI element. Target can be: visible text ('Continue'), an element id from computer.observe ('element_17'), or coordinates ({'x': 500, 'y': 300}). The engine resolves it via accessibility first, then OCR, then vision - and verifies the result.

computer.double_clickB

Double-click a UI element (same flexible target rules as computer.click).

computer.right_clickC

Right-click a UI element (same flexible target rules as computer.click).

computer.move_mouseB

Move the mouse cursor to a target (text, element id or coordinates).

computer.dragC

Drag from one target to another (text, element ids or coordinates).

computer.scrollA

Scroll the mouse wheel. Positive amount scrolls up, negative down. Optionally at specific coordinates (x, y).

computer.typeA

Type text at the currently focused input. Handles Unicode and multiline text (clipboard fallback used automatically). The typed content is never logged.

computer.pressC

Press a keyboard key ('enter', 'tab', 'escape', 'f5', ...).

computer.hotkeyA

Press a key combination. Pass a string like 'ctrl+s' or a list like ['ctrl', 'shift', 't'].

computer.list_windowsA

List all top-level OS windows with title, application, pid and state.

computer.focus_windowA

Focus a real OS window by (partial) title or application name, e.g. 'Chrome'. Works without any application-specific integration.

computer.minimize_windowC

Minimize a window by title/application.

computer.maximize_windowC

Maximize a window by title/application.

computer.restore_windowC

Restore a minimized/maximized window.

computer.close_windowA

Close a window gracefully (WM_CLOSE). Requires confirm=true; modal confirmation dialogs remain visible for the agent to handle.

computer.get_clipboardA

Read the clipboard text.

computer.set_clipboardA

Write text to the clipboard (useful as a typing fallback).

computer.launch_applicationA

Launch a GUI application ('chrome', 'code', a .desktop entry, or a full path). Subject to security.allowed_applications.

computer.run_commandA

Run a shell command (security.allowlist applies; see computer.backend_status). Requires confirm=true. Output is truncated and credential-redacted.

computer.backend_statusA

Report health/availability of every backend (input, screenshot, accessibility, window management, clipboard, OCR, vision) plus security settings and emergency-stop state.

computer.emergency_stopA

EMERGENCY STOP: immediately halt all automation (checked before every action and attempt). Persists until reset_emergency_stop.

computer.reset_emergency_stopA

Clear a previously triggered emergency stop.

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/adkdev200/Universal-Computer-Control'

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