hyprland-mcp-server (rodsilvavieira2/hyprland-mcp-server) is an MCP server listed on the M8ven Trust Index. It scores 70 out of 100, grade C. It declares 20 tools. No publisher has claimed this listing.
Enables LLMs to capture screenshots, inspect windows, and interact with the Hyprland desktop environment through mouse clicks and keyboard input.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
rodsilvavieira2
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
hyprland_click_atMove the cursor to absolute coordinates and perform a mouse click. Requires ydotool and the ydotoold daemon to be running. The cursor is moved to the target position first, then the click is fired. Coordinates are in global layout pixels. Use hyprland_list_windows to get window geometry (x, y, wid…
hyprland_click_windowClick on a window by targeting its center (with optional offset). Automatically computes the window center from its geometry and performs a click there. Requires ydotool and the ydotoold daemon to be running. Identify the target window with ONE of: address, class (substring), title (substring), or…
hyprland_click_window_relativeClick inside a specific window using coordinates relative to that window. This avoids global-coordinate mistakes when using hyprland_screenshot_window output. Given a local point (local_x, local_y), this tool converts to global coordinates: global_x = window_x + local_x global_y = window_y + lo…
hyprland_click_and_screenshot_activeExecute click-at with optional bounded retries, then capture the active window screenshot. This helper implements a practical click → verify loop: 1) click at global coordinates 2) optionally retry nearby nudged points if focus does not match expected window 3) capture and return active-window scre…
hyprland_double_click_atMove the cursor to absolute coordinates and perform a double mouse click. Requires ydotool and the ydotoold daemon to be running. The cursor is moved to the target position first, then two clicks are fired with a short pause. Coordinates are in global layout pixels. Use hyprland_list_windows to ge…
hyprland_double_click_windowDouble-click on a window by targeting its center (with optional offset). Automatically computes the window center from its geometry and performs a double click there. Requires ydotool and the ydotoold daemon to be running. Identify the target window with ONE of: address, class (substring), title (…
hyprland_focus_windowBring keyboard and compositor focus to a specific window in Hyprland. Uses hyprctl dispatch focuswindow to focus the target window. After focusing, keyboard input (type_text, send_key) will be directed to that window. Identify the target window with ONE of: address, class (substring), title (subst…
hyprland_get_active_windowGet metadata for the currently focused (active) window in Hyprland. Returns the same fields as hyprland_list_windows for a single window: address, class, title, PID, workspace, monitor, geometry, and flags. Use this tool when you want to interact with or screenshot whatever the user is looking at.…
hyprland_get_cursor_posGet the current cursor (mouse pointer) position in global layout coordinates. Returns the absolute X/Y position of the mouse cursor on the Wayland compositor canvas. Coordinates are in pixels relative to the top-left corner of the global layout (across all monitors). Returns: { "x": number, …
hyprland_list_monitorshyprland_list_windowsList all open windows in the Hyprland Wayland compositor with their metadata. Returns window address, class, title, PID, workspace, monitor, geometry (position + size), and flags (floating, pinned, fullscreen, XWayland). The window `address` is the unique identifier required by other tools such as…
hyprland_list_workspaceshyprland_move_cursorMove the mouse cursor to an absolute position in global layout coordinates. Uses hyprctl dispatch movecursor to reposition the cursor without clicking. Coordinates are in pixels relative to the top-left corner of the Wayland compositor canvas. Use hyprland_list_windows to get window geometry (x, y…
hyprland_screenshot_active_windowCapture a screenshot of the currently focused (active) window in Hyprland. No selector needed — automatically identifies the focused surface via hyprctl activewindow. This is the most convenient way to screenshot "what the user is currently looking at". Args: - include_image (boolean): Embed bas…
hyprland_screenshot_monitorCapture a full-monitor screenshot in Hyprland using grim. Captures the entire display output of a single monitor. Useful for capturing the full desktop or when you need to see the complete layout across all windows on that output. Args: - monitor (string): Monitor name like 'DP-1' or 'HDMI-A-1'.…
hyprland_screenshot_windowCapture a screenshot of a specific window in Hyprland using grim. Identify the target window with ONE of: address, class (substring), title (substring), or pid. Prefer `address` for precision; class/title for convenience. Use hyprland_list_windows to discover addresses and classes. The window must…
hyprland_send_keySend a key or key combination to a specific window or the active window. Uses hyprctl dispatch sendshortcut to inject keyboard events without disturbing focus. The window does not need to be focused — keys can be sent to background windows. For typing plain text strings, use hyprland_type_text ins…
hyprland_switch_workspaceSwitch the active workspace on the focused monitor. Accepts either a numeric workspace ID or a workspace name. Use hyprland_list_workspaces to discover available workspaces and their IDs/names. Hyprland also supports special values for 'name': - "previous" → switch to the previously active work…
hyprland_type_textType a text string into the currently focused window using wtype. The text is injected directly into the Wayland compositor as keyboard events. The target window must be focused first — use hyprland_focus_window if needed. Supports Unicode characters including emoji. For special keys (Enter, Tab, …
hyprland_press_keyPress a single special key by XKB name in the currently focused window. Uses wtype -k to inject a key event. The window must be focused — use hyprland_focus_window first. For typing text strings use hyprland_type_text. For key combinations with modifiers (Ctrl+C) use hyprland_send_key. Common XKB …
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
Anthropic's MCP TypeScript SDK has a ReDoS vulnerability
Model Context Protocol (MCP) TypeScript SDK does not enable DNS rebinding protection by default
WAYLAND_DISPLAYThe server must run inside an active Hyprland session with set.Tool inputs are validated
Only 0/20 tool handlers declare input schemas (0%)
Declare an inputSchema with zod/joi/yup on every tool definition.
License file
No license file
Add a LICENSE file (MIT, Apache-2.0, etc.).
Tests exist
No test files found
Add tests that exercise each declared tool.
Production dependencies are patched
0 critical, 2 high severity in production deps — @modelcontextprotocol/sdk@1.6.1 (high), @modelcontextprotocol/sdk@1.6.1 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/rodsilvavieira2/hyprland-mcp-server)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check