fastmcp-linux-desktop
Provides tools for managing Hyprland windows and workspaces, including focusing windows by title, class, or address, dispatching arbitrary hyprctl commands, switching workspaces, and listing monitors.
Provides tools for interacting with Wayland compositors, such as enumerating windows, capturing screenshots using grim, and querying monitor geometry and details.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
π₯οΈ fastmcp-linux-desktop
High-performance FastMCP Server empowering AI Agents (Claude Desktop, Cursor, Antigravity, OpenRig) with native Linux desktop and compositor control.
Provides deep primitives for Hyprland/Wayland window management, PipeWire audio routing, systemd health diagnosis and self-healing, notifications, and long-term agent memory.
β‘ Features & MCP Tool Catalog
πͺ Wayland & Hyprland Window Management
get_windows(): Enumerate all active windows, classes, floating status, and workspace geometry.focus_window(target): Focus window by title, class, or hex address (e.g.Alacritty,Chrome).dispatch_hyprland(dispatcher, args): Run any arbitraryhyprctl dispatchinstruction.switch_workspace(workspace_id): Switch workspace dynamically.get_monitors(): List connected outputs, resolutions, scale factors, and refresh rates.
π Audio & DSP Routing
get_audio_status(): Query default sink volume, mute state, and driver.set_volume(percentage): Smoothly adjust sink volume (0-150%).toggle_audio_sink(): Cycle audio output between HDMI, line-out, headphones, or Bluetooth.
π©Ί System Diagnostics & Self-Healing
get_system_health(): Instant diagnosis of failed system/user systemd units, load, and RAM.heal_system(): Automatically reset-failed and restart degraded units, recovering audio if stalled.get_resource_usage(): View filesystem disk usage and top CPU/memory consuming processes.desktop_notify(title, message, urgency): Trigger native desktop notifications vianotify-send.take_screenshot(output_path): Capture Wayland screenshots usinggrim.
π§ Agentic Memory & Context (Optional)
condense_context(raw_text, query): Real-time BM25 context compression (up to 98% token reduction) viacontext-condenser.memory_retain(fact, category, importance): Long-term episodic memory storage viaagent-hindsight.memory_recall(query, category, limit): Fast memory retrieval with recency decay.
Related MCP server: yale-agent
π Installation & Usage
1. Install via pip
pip install fastmcp-linux-desktop2. Connect to Claude Desktop / Cursor / Antigravity
Generate configuration or install automatically with one command:
# Print configuration JSON
fastmcp-linux-desktop config --claude
fastmcp-linux-desktop config --cursor --sse
# Automatically merge into client config file with safe timestamped backup:
fastmcp-linux-desktop config --claude --writeManual configuration block for claude_desktop_config.json or .cursor/mcp.json:
{
"mcpServers": {
"linux-desktop": {
"command": "fastmcp-linux-desktop",
"args": ["--transport", "stdio"]
}
}
}3. Run as a Persistent Daemon (SSE / HTTP)
# Run over SSE on port 8991
fastmcp-linux-desktop --sse --port 8991
# Or run as a systemd user service
systemctl --user enable --now fastmcp-linux-desktop.serviceπ§ Systemd User Unit Example
Create ~/.config/systemd/user/fastmcp-linux-desktop.service:
[Unit]
Description=FastMCP Linux Desktop MCP Server
After=graphical-session.target
[Service]
Type=simple
ExecStart=/usr/local/bin/fastmcp-linux-desktop --sse --port 8991
Restart=on-failure
RestartSec=3
[Install]
WantedBy=default.targetπ§ͺ Testing
python3 -m unittest discover testsπ License
MIT License. Designed and maintained by apravint.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
This server cannot be deployed
Maintenance
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Cloud desktops for AI agents: create a Linux computer, see its screen, click, type and run tasks.
A cloud Linux desktop for your AI: browse, click, type, read the screen and run commands.
Remote Linux boxes for coding agents: Docker, a browser, screenshots, logs, human takeover.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceLinux desktop HAL for AI agents. One daemon, one socket, every desktop action. GNOME, KDE, Hyprland, X11. Ships in one command.31MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to automate a Linux desktop natively on Wayland, with 68 tools for screen capture, input simulation, browser automation, OCR, accessibility, media, audio, clipboard, notifications, filesystem, system, memory, and network operations through the MCP protocol.MIT
- AlicenseNot gradedqualityCmaintenanceEnables an AI agent to see and control a Linux desktop via Wayland/Hyprland, providing screenshots, structured desktop state, pointer/keyboard input, semantic window/workspace tools, and a policy engine for safe execution.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to see, click, type, and drive a Wayland Linux desktop through mouse, keyboard, screenshots, OCR, icon finding, window management, and accessibility-tree inspection.1ISC