computer-use-linux
View on GitHubLinux desktop control over MCP — AT-SPI, GNOME Shell, Wayland portals, ydotool
Rust MCP server and CLI that gives any MCP host full control of a Linux desktop: AT-SPI accessibility trees, screenshots, semantic clicks and typing, and compositor-aware window targeting across GNOME, KDE, Hyprland, i3 and COSMIC, Wayland-first with ydotool and X11 fallbacks.
Use Cases
Drive a Linux desktop from Claude Desktop, Codex Desktop, or Hermes Agent via MCPCapture screenshots and read AT-SPI accessibility trees of running appsClick, drag, scroll, type, and press keys with semantic selectors instead of pixel coordinatesAutomate GUI workflows on Wayland (GNOME, KDE, Hyprland, COSMIC) with X11 fallbackFocus, move, and resize windows across multiple compositor backendsRun JSON readiness diagnostics to check portals, AT-SPI, input, and windowingInvoke native accessibility actions like Press, Activate, Toggle, or set text field valuesScript desktop interaction from the CLI for debugging and headless agent loops
Built With
- Language
- Rust
- Frameworks
- MCP · AT-SPI · GNOME Shell · Wayland RemoteDesktop portal · ydotool · wtype · KWin DBus · Hyprland hyprctl · i3 IPC · EWMH · Node.js · Cargo
Tags
mcp · computer-use · linux · wayland · gnome · at-spi · accessibility · desktop-automation · screenshots · input-automation · ydotool · kde · hyprland · i3 · cosmic · rust