computer-use
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DISPLAY | No | Target X display | :10 |
| CU_WIDTH | No | Screen width for coordinate scaling | 1920 |
| CU_HEIGHT | No | Screen height for coordinate scaling | 1080 |
| CU_LOCK_PATH | No | Single-owner lock file path | /tmp/sidebutton-computer-use.lock |
| CU_SCREENSHOT_DELAY | No | Post-action settle delay before a screenshot | 2.0 |
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
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| screenshotB | Capture the active display (DISPLAY=:10) and return a base64-encoded PNG. Implemented in SCRUM-1397 as the proof action. |
| zoomB | Capture and return a magnified PNG of a sub-region of the screen. |
| left_clickC | Left-click at a coordinate. |
| right_clickC | Right-click at a coordinate. |
| middle_clickC | Middle-click at a coordinate. |
| double_clickB | Double left-click at a coordinate. |
| triple_clickB | Triple left-click at a coordinate. |
| mouse_moveA | Move the pointer to a coordinate without clicking. |
| left_click_dragA | Press the left button at start_coordinate (or the current position) and drag to coordinate before releasing. |
| scrollC | Scroll in a direction by an amount at a coordinate. |
| left_mouse_downA | Press and hold the left mouse button (released later by left_mouse_up). Requires the persistent session. |
| left_mouse_upB | Release a left mouse button held by left_mouse_down. |
| typeB | Type a string of text at the current focus. |
| keyA | Press a key or chord using xdotool key syntax, e.g. 'Return', 'ctrl+s', 'alt+Tab'. |
| hold_keyC | Hold a key (or chord) down for a duration in seconds. |
| read_clipboardA | Read the X clipboard contents (via xclip). |
| write_clipboardB | Write text to the X clipboard (via xclip). |
| request_accessB | Request a session grant for one or more applications (Linux stub: auto-grants and returns screenshotFiltering=false; the real grant model lands with the service engine). |
| list_granted_applicationsA | Return the set of applications currently granted desktop access (Linux stub: echoes the granted set). |
| open_applicationB | Launch or focus a desktop application by name. |
| switch_displayC | Switch the display the session targets, e.g. ':10'. |
| computer_batchB | Run a sequence of computer-use actions in order and return one combined result. |
| waitA | Wait for a duration in seconds (then optionally screenshot). |
| cursor_positionA | Return the current cursor [x, y] in model coordinates. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 24 tools
Most tools have distinct purposes like left_click vs right_click vs double_click, but some overlap exists (e.g., left_click_drag vs left_mouse_down/move/up sequence) and could cause confusion despite clear descriptions.
Naming is mostly snake_case but inconsistent in verb_noun patterns: some are verbs (type, scroll), some nouns (screenshot, key), and some are compound (computer_batch). Not chaotic but lacks a uniform style.
24 tools is reasonable for a computer-use server covering mouse, keyboard, clipboard, screenshots, and display management. Not too many, not too few.
Covers core desktop automation actions well (clicks, drag, keyboard, clipboard, screenshots, scrolling, application launching). Minor gaps like file operations or advanced gestures are acceptable.