mcpField
๐Ÿš€
๐Ÿš€ Wayland MCP Server

๐Ÿš€ Wayland MCP Server

Local
github.com/someakaOther17Updated 57w ago

About ๐Ÿš€ Wayland MCP Server

Wayland MCP Server provides screenshot, image-analysis, and input-control tools for Wayland desktops, for agents that need to operate Linux desktops. It supports custom VLM analysis, image comparison, mouse and keyboard actions, and action chaining.

Key features

  1. 01Wayland desktop screenshots
  2. 02Custom VLM image analysis
  3. 03Image comparison
  4. 04Mouse and keyboard control
  5. 05Chained input actions

Use cases

  1. 01Capture and analyze desktop screens
  2. 02Compare screen images across states
  3. 03Run sequences of mouse and keyboard actions

MCP support

The MCP server exposes Wayland desktop screenshot, image-analysis, mouse, and keyboard tools to MCP clients. Enabling input control gives the server full access to the mouse and keyboard.

Configuration

Local server config is the same for every client. Copy it into your clientโ€™s MCP config file.

mcp.json ยท Universal config
{
"mcpServers": {
"wayland": {
"command": "uvx",
"args": [
"wayland-mcp"
],
"env": {
"OPENROUTER_API_KEY": "<OPENROUTER_API_KEY>",
"VLM_MODEL": "<VLM_MODEL>",
"XDG_RUNTIME_DIR": "<XDG_RUNTIME_DIR>",
"WAYLAND_MCP_PORT": "<WAYLAND_MCP_PORT>",
"DISPLAY": "<DISPLAY>",
"WAYLAND_DISPLAY": "<WAYLAND_DISPLAY>",
"XDG_SESSION_TYPE": "<XDG_SESSION_TYPE>"
}
}
}
}
Run commanduvx wayland-mcp
Environment variables to set
OPENROUTER_API_KEYSecret
VLM_MODEL
XDG_RUNTIME_DIR
WAYLAND_MCP_PORT
DISPLAY
WAYLAND_DISPLAY
XDG_SESSION_TYPE

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your clientโ€™s docs.

Packages
pypiwayland-mcp

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

๐Ÿš€ Wayland MCP Server

Status: WIP License: GPL3

Note: This package was created because existing screenshot solutions didn't work reliably on my Wayland setup. Wayland MCP provides screenshot, analysis, mouse and keyboard control tools for modern Linux desktops.


โœจ Features

  • ๐Ÿ“ธ Screenshot & Analysis

    • Custom VLM integration for image analysis
    • Image comparison capabilities
  • ๐Ÿ–ฑ๏ธ Input Simulation

    • Mouse control (move, click, drag, scroll)
    • Keyboard input (typing, key presses)
    • Action chaining for complex sequences

โš ๏ธ Security Warning

WARNING: Enabling input control gives the MCP server full access to your mouse and keyboard. Only use with trusted MCP servers and models.


๐Ÿš€ Quick Start

๐Ÿ”ง Input Control Setup
./setup.sh

View setup.sh on GitHub

Configures permissions for evemu-event to control input devices.

โš™๏ธ MCP Server Configuration

Add to your MCP server config (.roo/mcp.json):

{
  "mcpServers": {
    "wayland-screenshot": {
      "command": "uvx",
      "args": ["wayland-mcp"],
      "env": {
        "OPENROUTER_API_KEY": "your-api-key",
        "VLM_MODEL": "qwen/qwen2.5-vl-72b-instruct:free",
        "XDG_RUNTIME_DIR": "/run/user/1000",
        "WAYLAND_MCP_PORT": "4999",
        "DISPLAY": ":0",
        "WAYLAND_DISPLAY": "wayland-0",
        "XDG_SESSION_TYPE": "wayland"
      }
    }
  }
}

๐Ÿ› ๏ธ Development

git clone https://github.com/someaka/wayland-mcp
cd wayland-mcp
pip install -e .

๐Ÿ“œ License

GPL 3

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.