hypr-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HYPR_MCP_MAX_WIDTH | No | Maximum width for screenshots (default: 1440) | 1440 |
| HYPR_MCP_CLICK_SETTLE | No | Settle time in seconds after clicks (default: 0.2) | 0.2 |
| HYPR_MCP_FOCUS_SETTLE | No | Settle time in seconds after focus changes (default: 0.3) | 0.3 |
| HYPR_MCP_JPEG_QUALITY | No | JPEG quality for screenshots (default: 75) | 75 |
| HYPR_MCP_OCR_MIN_CONF | No | Minimum confidence for OCR (default: 30) | 30 |
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 |
|---|---|
| list_monitorsA | List monitors with resolution, position, active workspace. |
| list_workspacesA | List workspaces with window counts. Active one is marked [focused]. |
| switch_workspaceA | Switch to a workspace by name/number (e.g. "1", "special:scratchpad"). |
| get_cursor_positionA | Cursor position in absolute layout coordinates. |
| list_windowsC | List windows with class, title, size, position. |
| focus_windowC | Focus a window by selector ("class:firefox", "title:Doc", "address:0x..."). |
| close_windowB | Close a window (WM_CLOSE, apps may prompt to save). |
| move_windowC | Move active/selected window to pixels and/or workspace (incl. "special:name"). |
| resize_windowC | Resize active/selected window to pixel dimensions. |
| toggle_specialC | Toggle a special (scratchpad) workspace by name. |
| wait_windowB | Wait for a window to exist / reach a title. Replaces blind sleeps. Use after launch_app or navigation: title change is the load signal (e.g. title_contains="Example Domain"). Returns instantly on match. |
| toggle_fullscreenB | Set fullscreen state. mode: "fullscreen"|"maximize", action: "set"|"unset"|"toggle". |
| toggle_floatingC | Set floating state. action: "set"|"unset"|"toggle". |
| launch_appA | Launch an app detached (no shell — binary + args only). Waits for its window. Slow starters (Steam) need the generous default; pass a smaller timeout for known-fast apps, larger for known-slow ones. |
| clipboard_readA | Read clipboard text (truncated to max_chars). |
| clipboard_writeB | Write text to clipboard. |
| mouse_moveB | Move cursor to absolute coordinates (pixel-accurate). |
| mouse_clickA | Click at coords or current pos. |
| mouse_scrollC | Scroll wheel, optionally after moving to absolute coords. |
| mouse_dragC | Drag in absolute coordinates. |
| type_textB | Type text via wtype. |
| key_pressB | Press combo ("ctrl+c") or single key ("Return"). Single source for shortcuts. |
| paste_textA | Reliable path for unicode/long text: clipboard + ctrl+v (wtype chokes on these). |
| screenshotB | Screenshot to inline JPEG + coordinate mapping (coords are absolute). Pass path to save full-res PNG to disk instead (no token cost) — for debugging OCR without an inline image. |
| find_text_on_screenC | OCR-search for text. Returns absolute coords for mouse_click. |
| wait_textA | Wait for on-screen text to appear (or disappear). Replaces blind sleeps. Use for in-window state no compositor event covers: button flips (UPDATE→PLAY), page content, dialogs. Returns instantly on match. |
| click_textB | OCR-find text and click it. Focusing |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |