mcpbeat Sign in

Deskwright MCP Server

by tristanmuzzu Your server? Claim it
local only

Deskwright runs on your own machine — the client starts it, so there is no endpoint to ping. 680 installs a week from pypi. Last commit 12 Sep 2026.

Agents use real GNOME/Wayland apps: on your screen, or an invisible second desktop you never see

680
Installs / week
pypi · deskwright
8
Stars
6 open issues
12 Sep 2026
Last commit
0 releases in 90 days
Apache-2.0
License
Python

What the code does

We read the source, 9 h ago · rules 3dff92dd89df

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

                cropped_in_shell = True
Executes code built at runtime deskwright/code_runtime.py:95
            exec(compiled, GLOBALS)
    env = dict(os.environ, YDOTOOL_SOCKET=YDOTOOL_SOCKET)

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.

run in your terminal
claude mcp add deskwright -- uvx deskwright
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "deskwright": {
      "args": [
        "deskwright"
      ],
      "command": "uvx"
    }
  }
}
~/.codex/config.toml
[mcp_servers.deskwright]
command = "uvx"
args = ["deskwright"]
.cursor/mcp.json
{
  "mcpServers": {
    "deskwright": {
      "args": [
        "deskwright"
      ],
      "command": "uvx"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "deskwright": {
      "args": [
        "deskwright"
      ],
      "command": "uvx"
    }
  }
}

This one needs environment variables set before it will start: DESKWRIGHT_SESSION (Which desktop to drive: 'primary' (the screen you are looking at), 'headless' for an invisible virtual-monitor session, or 'headless:<name>' to pick one of several.), DESKWRIGHT_INPUT_BACKEND (Force the input path: 'mutter' for GNOME's org.gnome.Mutter.RemoteDesktop (no consent dialog), 'portal' for org.freedesktop.portal.RemoteDesktop (one consent, then persisted). Auto-selected when unset.). The author declared them in the registry entry; get the values from the project itself.

Alternatives to Deskwright

same job, measured the same way
realhands - Real Desktop Computer Use
by kanishka089

Lets Claude drive your REAL mouse, keyboard and screen - works in your own logged-in apps.

336 installs/wk local only
Electron Stagewright
by electron-stagewright

Agent-native MCP server for driving, inspecting, and asserting on real Electron desktop apps.

102 installs/wk local only
Glovebox MCP
by segentic-lab

Sandboxed computer-use for AI agents: drive real browser + desktop apps in nested X11 windows

local only
Netwright
by ricfanin

Playwright-style automation of .NET desktop apps (WPF, WinForms, WinUI) for AI agents.

local only
GNOME UI MCP
by asattelmaier

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

local only
vaultguard
by ashishrao-4

AI agents use your Obsidian secrets by name — values never reach their context.

359 installs/wk local only
Chart Context
by mylinedchart

Read-only MCP server: AI agents read your live MyLinedChart desktop chart context. Local, IBKR.

39 installs/wk local only
TesterArmy
by tester-army

Agents that test your web and mobile app like real users, on every pull request.

answering

Deskwright — questions

Answers built from our own checks of this server.

Why is there no uptime for Deskwright?
Deskwright runs on your own machine over stdio — there is no network address to reach, so uptime cannot be measured for it by anyone. What can be measured is adoption: the pypi package deskwright was installed 680 times last week.
How do I connect Deskwright?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It runs locally, so the command pulls deskwright straight from pypi; nothing to host, nothing to sign up for.
How many people use Deskwright?
The pypi package deskwright was installed 680 times in the last week. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Deskwright open source?
Yes — it is published under the Apache-2.0 licence, written in Python, 8 stars on GitHub and 6 open issues. The source link is on this page, so you can read exactly what it does with your data before you connect it.