Linux Desktop
FreeNot checkedEnables full Linux desktop control including windows, mouse, keyboard, clipboard, audio, screenshots, OCR, accessibility, and system management through MCP-comp
About
Enables full Linux desktop control including windows, mouse, keyboard, clipboard, audio, screenshots, OCR, accessibility, and system management through MCP-compatible AI agents.
README
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 install
Add to your MCP config:
{
"mcpServers": {
"linux-desktop": {
"command": "node",
"args": ["/path/to/mcp-linux-desktop/server.js"]
}
}
}
Tools
Window Management
| Tool | Description |
|---|---|
window_list |
List all open windows with IDs, names, geometry |
window_focus |
Focus a window by ID or name |
window_close |
Close a window |
window_minimize |
Minimize a window |
window_resize |
Resize and/or move a window |
Mouse & Keyboard
| Tool | Description |
|---|---|
mouse_move |
Move cursor to coordinates |
mouse_click |
Click (left/right/middle, single/double) |
mouse_scroll |
Scroll in any direction |
mouse_drag |
Drag from one position to another |
mouse_location |
Get current cursor position |
keyboard_type |
Type text |
keyboard_key |
Press key combo (e.g. ctrl+a, alt+Tab) |
Apps & Files
| Tool | Description |
|---|---|
app_launch |
Launch an application by name or command |
app_list |
List running graphical applications |
file_open |
Open a file or URL with its default app |
Clipboard
| Tool | Description |
|---|---|
clipboard_read |
Read clipboard contents |
clipboard_write |
Write text to clipboard |
Audio
| Tool | Description |
|---|---|
volume_get |
Get current volume and mute status |
volume_set |
Set volume (0-100) or toggle mute |
Screen
| Tool | Description |
|---|---|
screenshot |
Screenshot the screen or a region |
screen_observe |
Screenshot + screen metadata (resolution, active window, mouse position) |
ocr_screen |
Screenshot a region and extract text via OCR |
Accessibility
| Tool | Description |
|---|---|
ui_elements |
Read interactive UI elements (buttons, fields, menus) with screen coordinates via AT-SPI |
System
| Tool | Description |
|---|---|
system_info |
CPU, RAM, disk, uptime |
process_list |
List processes (optional name filter) |
process_kill |
Kill a process by PID or name |
notify |
Send a desktop notification |
brightness_get |
Get screen brightness |
dbus_call |
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.0
Environment variables
| Variable | Default | Description |
|---|---|---|
DISPLAY |
:1 |
X11 display to target |
Installing Linux Desktop
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/wizardofweb125-lab/mcp-linux-desktopFAQ
Is Linux Desktop MCP free?
Yes, Linux Desktop MCP is free — one-click install via Unyly at no cost.
Does Linux Desktop need an API key?
No, Linux Desktop runs without API keys or environment variables.
Is Linux Desktop hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Linux Desktop in Claude Desktop, Claude Code or Cursor?
Open Linux Desktop on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Omni Video
An MCP server that transforms LLM-enabled IDEs into professional video editors by pre-processing footage into text proxies, generating motion graphics via HTML/
by buildwithtazaARA
Generate images, video and audio from any AI agent — one connector.
by ARAYouTube
Transcripts, channel stats, search
by YouTubeEverArt
AI image generation using various models.
by modelcontextprotocolCompare Linux Desktop with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All media MCPs
