GNOME UI MCP Server

GNOME Wayland desktop automation via AT-SPI discovery and Mutter input.

Local serverstdio

What is the GNOME UI MCP Server?

GNOME Wayland desktop automation via AT-SPI discovery and Mutter input.

What you get

It exposes GNOME desktop inspection and interaction through AT-SPI for discovery and Mutter RemoteDesktop for input. In practice that means element lookup, activation, typing, screenshots, and wait helpers for the current desktop session.

Configuration and credentials

  • Linux host with GNOME Shell on Wayland - Live local GNOME session on the machine you want to automate - Session environment available: DBUS_SESSION_BUS_ADDRESS, XDG_RUNTIME_DIR, WAYLAND_DISPLAY, DISPLAY, XDG_SESSION_TYPE

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

How to install the GNOME UI MCP Server

{
  "mcpServers": {
    "gnome-ui": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "--security-opt",
        "apparmor=unconfined",
        "--network",
        "host",
        "--user",
        "1000:1000",
        "-e",
        "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus",
        "-e",
        "XDG_RUNTIME_DIR=/run/user/1000",
        "-e",
        "WAYLAND_DISPLAY=wayland-0",
        "-e",
        "DISPLAY=:0",
        "-e",
        "XDG_SESSION_TYPE=wayland",
        "-v",
        "/run/user/1000:/run/user/1000",
        "-v",
        "/tmp/.X11-unix:/tmp/.X11-unix:ro",
        "ghcr.io/asattelmaier/gnome-ui-mcp:latest"
      ]
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

  • Linux host with GNOME Shell on Wayland - Live local GNOME session on the machine you want to automate - Session environment available: DBUS_SESSION_BUS_ADDRESS, XDG_RUNTIME_DIR, WAYLAND_DISPLAY, DISPLAY, XDG_SESSION_TYPE

Frequently asked questions

GNOME Wayland desktop automation via AT-SPI discovery and Mutter input. Confirm the tools offered by your installed version in the connected client. Tool availability and permissions depend on the server and account configuration.