Labsco
MCP SERVER

MCPControl

by Cheffromspace

Give an assistant a Windows desktop — mouse, keyboard, windows and screenshots — usually inside a VM.

Desktop & OS Automation
Summary
Built for a VM at 1280x720, and the project is direct about the risk.

Click accuracy is tuned for that resolution on a single screen, and running it in a virtual machine is the recommended shape rather than a footnote — this hands a model control of a real mouse and keyboard. Known gaps are stated plainly too: window minimize and restore are unsupported, and multiple screens may not behave.

What it is

A Windows control server for MCP: programmatic mouse, keyboard, window management, screen capture and clipboard.

What you get
  • Mouse — movement, click and drag, scrolling and position tracking
  • Keyboard — text input, key combinations, press and release, and hold
  • Windows — list all windows, get the active one, focus, resize and reposition
  • Screen — screenshots, screen size detection and active-window capture
  • Clipboard operations
  • Three automation providers you can mix per operation: keysender by default, powershell for simpler work, and autohotkey for AutoHotkey v2 scripting
  • SSE transport, so the server can run on a VM and your client can connect to it across the network
Requirements

Windows only — the keysender dependency is Windows-specific. Visual Studio Build Tools with the VC++ workload, Python and Node.js, then npm install -g mcp-control. Start it with mcp-control --sse; the default port is 3232, and --https with --cert and --key is mandatory for anything remote per the MCP spec. Providers are chosen with AUTOMATION_PROVIDER, or per operation with AUTOMATION_KEYBOARD_PROVIDER and friends.

Setup effort

One command — npm install -g mcp-control