WinRemote MCP
An MCP server for remote Windows control: screenshots, PowerShell, files, mouse and keyboard, registry and OCR
- 221 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- The agent gets a PowerShell shell, files, registry, mouse and keyboard of the Windows machine
- Remote access without a key and HTTPS exposes the machine to the whole network
Install
- Works in
Manual install
pip install winremote-mcpInstalled on the Windows machine being controlled; start it with winremote-mcp.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- The agent gets a PowerShell shell, files, registry, mouse and keyboard of the Windows machine
- Remote access without a key and HTTPS exposes the machine to the whole network
This is third-party code. Review the repository files before installing.
What it does
WinRemote MCP runs on the Windows machine you want to control and connects to MCP clients: Claude Desktop, Claude Code, Cursor, Hermes and OpenClaw. It is built on FastMCP and by default listens only on 127.0.0.1:8090. Tools come in tiers. The base tier gives multi-monitor screenshots, clicks, typing, scrolling, hotkeys, window management and OCR. The second tier adds PowerShell and CMD execution, reading, writing and searching files, file transfer between Linux and Windows, process and service info, network checks and GIF screen recording. The third tier with destructive tools is off and enabled with --enable-tier3; individual tools are excluded in config through tools.exclude. Network access needs an --auth-key or OAuth: binding to a non-local address without authentication is refused, and HTTPS can be enabled for open networks.
Who it is for. Developers and administrators who want to give an agent control of a Windows machine or VM from Linux or macOS.
Good fit when
- An agent on Linux or macOS must test a Windows app and take a screenshot
- You need to automate a desktop app with no API through clicks and typing
- Files must move between a dev machine and a Windows host
- A headless Windows server needs an MCP-based alternative to RDP and VNC
Not a fit when
- The machine holds sensitive data and the agent must not get a shell and files
- You need internet access without HTTPS and a key: the server rejects such a launch
- You want read-only control: even the second tier executes commands and writes files
Example request
Take a screenshot on the Windows machine, open Notepad, type a test line and save the file to the desktopMCP
- Transport
- stdio, http
- Authentication
- API key
Limitations
The server gives the agent near-complete control of the machine: PowerShell shell, files, registry, mouse and keyboard. Run it on a test or isolated Windows box and protect remote access with a key and HTTPS. Since version 0.4.20 the server will not accept connections from other addresses without authentication. The third tier of destructive tools is off by default, and unneeded tools can be removed in config.toml. The last commit in the repository was on 30 September 2026.
How to disable. Stop the winremote-mcp process and remove the package with pip uninstall winremote-mcp. In the client, delete the winremote server entry from MCP settings.
FAQ
How do I protect network access?
Run with --auth-key and set a secret; for open networks enable HTTPS via ssl_certfile and ssl_keyfile. Since 0.4.20 binding to a non-local address without authentication is refused. For OAuth there is a client_id and client_secret pair.
What are tool tiers?
Tier one is always on: screen, input, windows, OCR. Tier two is on by default: PowerShell, files, processes. Tier three is off and enabled with --enable-tier3. Unneeded tools are excluded with the tools.exclude list.
Which clients does it work with?
Claude Desktop and Claude Code, Cursor, Hermes and OpenClaw. The skill folder has a guide for each, and a pre-provisioned secret is available for OAuth clients.
How do I install it?
With pip install winremote-mcp on the Windows machine itself, then winremote-mcp. By default the server is available at http://127.0.0.1:8090 for MCP clients on the same computer.
Can it drive apps with no API?
Yes. For Flutter, Electron, Qt and any other app it combines screenshots with AI vision, clicks and typing. The vision guide is in docs/vision-guide.md.
Discussion
No questions or reviews yet.
Related
MCP serversAn MCP server for driving Windows: the agent opens apps, clicks and types, reads window and UI state, and works with files and PowerShell
An MCP server for Windows: the agent moves the mouse, presses keys, manages windows and takes screenshots
MCP server and wincli CLI: agents drive Windows apps by control name through UI Automation instead of screen coordinates
The agent moves the mouse, types, drives windows and captures PNG screenshots of a Windows desktop through AutoIt.
An MCP server that lets an agent see the screen and control macOS, Windows and Linux: screenshots, clicks, OCR and screen memory
DesktopManager gives an agent Windows windows and monitors over MCP: it starts read-only and changes need separate flags.
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| WinRemote MCP (this card) | no | API key | 221 | |
| Windows-MCP | no | not required | 11,574 | controls Windows locally, while WinRemote focuses on remote access with a key, HTTPS and tool tiers |
| MCP Windows Desktop Automation | no | not required | 119 | desktop automation without network access, while WinRemote adds PowerShell, files and registry |
README in short
The README explains running on Windows, connecting Hermes, OpenClaw, Claude and Cursor agents, capabilities by category, mandatory authentication for network access, HTTPS, OAuth, the config file and tool tiers. A Chinese translation exists and the end covers typical scenarios.