mcp-linux-desktop
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-linux-desktoptake a screenshot of the active window"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Linux Desktop
MCP server for full Linux desktop control — windows, mouse, keyboard, clipboard, audio, screenshots, OCR, notifications, accessibility tree, and system management. Works with any MCP-compatible AI agent.
Setup
cd mcp-linux-desktop
npm installAdd to your MCP config:
{
"mcpServers": {
"linux-desktop": {
"command": "node",
"args": ["/path/to/mcp-linux-desktop/server.js"]
}
}
}Related MCP server: desk-mcp
Tools
Window Management
Tool | Description |
| List all open windows with IDs, names, geometry |
| Focus a window by ID or name |
| Close a window |
| Minimize a window |
| Resize and/or move a window |
Mouse & Keyboard
Tool | Description |
| Move cursor to coordinates |
| Click (left/right/middle, single/double) |
| Scroll in any direction |
| Drag from one position to another |
| Get current cursor position |
| Type text |
| Press key combo (e.g. |
Apps & Files
Tool | Description |
| Launch an application by name or command |
| List running graphical applications |
| Open a file or URL with its default app |
Clipboard
Tool | Description |
| Read clipboard contents |
| Write text to clipboard |
Audio
Tool | Description |
| Get current volume and mute status |
| Set volume (0-100) or toggle mute |
Screen
Tool | Description |
| Screenshot the screen or a region |
| Screenshot + screen metadata (resolution, active window, mouse position) |
| Screenshot a region and extract text via OCR |
Accessibility
Tool | Description |
| Read interactive UI elements (buttons, fields, menus) with screen coordinates via AT-SPI |
System
Tool | Description |
| CPU, RAM, disk, uptime |
| List processes (optional name filter) |
| Kill a process by PID or name |
| Send a desktop notification |
| Get screen brightness |
| Call a DBus method (GNOME shell, systemd, etc.) |
System dependencies
Required:
Node.js 18+
xdotool — window/mouse/keyboard control
xclip — clipboard (X11)
Python 3 + Pillow — screenshots
Optional:
wl-paste / wl-copy — clipboard on Wayland
tesseract-ocr + tesseract-ocr-fra — OCR
notify-send — desktop notifications
wpctl or pactl — audio control
gdbus — DBus calls
PyGObject + AT-SPI — accessibility tree (
ui_elements)
Install on Ubuntu/Debian:
sudo apt install xdotool xclip python3-pil tesseract-ocr tesseract-ocr-fra \
libnotify-bin pipewire-pulse gir1.2-atspi-2.0Environment variables
Variable | Default | Description |
|
| X11 display to target |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/wizardofweb125-lab/mcp-linux-desktop'
If you have feedback or need assistance with the MCP directory API, please join our Discord server