luda
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| desktop_doctorA | Check actual display access, desktop session, dependencies and accessibility availability. |
| desktop_windowsA | List window identities, titles, process identity, focus and native client bounds. |
| desktop_activateA | Activate a window from desktop_windows and verify focus. Observe again afterward. |
| desktop_observeC | Return screenshot plus window layout and a 15-second snapshot ID. Coordinates are image pixels. |
| desktop_inspectC | Return a bounded accessibility tree with opaque 60-second element IDs, roles, states and actions. |
| desktop_read_textB | Read exact accessible text, preserving whitespace. Protected fields are unsupported. Maximum 1 MB. |
| desktop_set_textA | Replace all text through accessibility and compare exact readback. Preserves LF, Tab and Unicode; rejects other control characters. Does not submit. |
| desktop_enter_textA | Paste literal text at the current caret using the application's explicit shortcut. Replaces CLIPBOARD; target contents are NOT verified. Terminals may execute newlines. Observe dialogs/read back before proceeding. |
| desktop_press_keysA | Send one deliberate chord, e.g. ctrl+s, ctrl+shift+v, Return, Tab, Escape. Requires target focus; never use this to type text. |
| desktop_clickA | Click screenshot-image coordinates inside the active target client. Rejects expired or changed layouts. |
| desktop_scrollB | Scroll 1–20 wheel ticks at a point in the observed active target. Read resulting state to confirm. |
| desktop_dragA | Drag between two observed points inside the same active window; always attempts button release. Cross-window drags are not supported yet. |
| desktop_focus_elementA | Request accessibility focus in the active window. Inspect to confirm focused state. |
| desktop_invokeA | Invoke an exact action name returned by inspect. Completion means dispatch, not verified application outcome. |
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 14 tools
Each tool targets a distinct desktop automation primitive: environment checks, window listing/activation, observation, accessibility inspection, text reading/writing/pasting, key chords, clicking, focusing, scrolling, dragging, and invoking actions. Even the input-related tools are clearly separated by mechanism and verification behavior.
All tools share the consistent desktop_ prefix and mostly use an imperative verb or verb_noun pattern (desktop_activate, desktop_read_text, desktop_press_keys). desktop_windows is the one noun-style outlier, and a few verbs like desktop_click and desktop_scroll lack an explicit object, but the overall convention is predictable.
Fourteen tools is well within the ideal range for a desktop automation server and each tool earns its place by covering a distinct interaction or observation need. The count feels appropriately scoped rather than bloated or thin.
The surface covers the core desktop workflow well: inspect, observe, activate, input, click, scroll, drag, and invoke. Minor gaps remain such as explicit window minimize/close/resize operations, mouse hover/right-click primitives, and direct clipboard access, but agents can typically work around these using the provided accessibility and keyboard tools.