Command Palette

Search for a command to run...

UnylyUnyly
Browse all

MCPvil

FreeNot checked

Minimal Wayland compositor with integrated tools for launching applications and capturing screenshots.

GitHubEmbed

About

Minimal Wayland compositor with integrated tools for launching applications and capturing screenshots.

README

A fork of smallvil from the Smithay project with an MCP (Model Context Protocol) server bolted onto it.

MCPvil is a minimal Wayland compositor that exposes its functionality through MCP, allowing AI agents and other MCP clients to interact with the compositor over stdio.

MCP Tools

Tool Description
launch_app Launch an application inside the compositor
close_app Kill an application by PID
save_screenshot_to_file Save a screenshot as a PNG file
capture_screenshot Capture a screenshot as base64-encoded PNG
mouse_move Move the mouse pointer to coordinates
mouse_click Click a mouse button at coordinates
key_press Simulate a key press via evdev keycode
scroll Scroll at coordinates in a given direction
open_window Open a GUI window for visual inspection

Installation

System Dependencies (Debian/Ubuntu)

sudo apt-get install build-essential pkg-config cmake \
  libwayland-dev wayland-protocols libinput-dev libudev-dev \
  libseat-dev libxkbcommon-dev libegl-dev libgles2-mesa-dev \
  libgbm-dev libdrm-dev libxcb1-dev libx11-xcb-dev \
  libdbus-1-dev libsystemd-dev libpixman-1-dev

Install via Cargo

cargo install --git https://github.com/derekjchow/mcpvil

Build from Source

git clone https://github.com/derekjchow/mcpvil.git
cd mcpvil
cargo build

Usage

MCPvil communicates over stdio using the MCP protocol (newline-delimited JSON-RPC). It can be used with any MCP-compatible client.

# Run directly (MCP server on stdio, compositor logs on stderr)
mcpvil

# With debug logging
RUST_LOG=debug mcpvil

# GUI mode (opens a window for visual inspection)
mcpvil --gui

Setup with MCP Clients

Claude Code

claude mcp add mcpvil -- mcpvil

Gemini CLI

Add to ~/.gemini/settings.json:

{
  "mcpServers": {
    "mcpvil": {
      "command": "mcpvil"
    }
  }
}

Dependencies

  • Smithay — Wayland compositor library
  • rmcp — Rust MCP server library
  • image — Screenshot encoding

from github.com/derekjchow/mcpvil

Installing MCPvil

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/derekjchow/mcpvil

FAQ

Is MCPvil MCP free?

Yes, MCPvil MCP is free — one-click install via Unyly at no cost.

Does MCPvil need an API key?

No, MCPvil runs without API keys or environment variables.

Is MCPvil hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install MCPvil in Claude Desktop, Claude Code or Cursor?

Open MCPvil 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

Compare MCPvil with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs