Windows-MCP

An MCP server for driving Windows: the agent opens apps, clicks and types, reads window and UI state, and works with files and PowerShell

  • 11,574 ★ on the repository
  • Last commit
  • MIT
MCP server

Broad access

Why this level

  • Gives the agent direct control of the Windows desktop: clicks, input, opening apps and file operations
  • Runs PowerShell commands and accesses the registry, and remote transports expose it over the network
All reasons and checks

cursortouch/windows-mcp

Install

Manual install

{
  "mcpServers": {
    "windows-mcp": {
      "command": "uvx",
      "args": ["windows-mcp", "serve"]
    }
  }
}

Requires uv installed. For HTTP transport add --transport streamable-http and a bind address.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • Gives the agent direct control of the Windows desktop: clicks, input, opening apps and file operations
  • Runs PowerShell commands and accesses the registry, and remote transports expose it over the network

This is third-party code. Review the repository files before installing.

What it does

The server links a language model to the Windows desktop and gives the agent tools to control the system. It captures a screenshot with cursor position and a window list, builds a UI element tree through UI Automation, emulates keyboard and mouse, opens and switches applications, works with files, clipboard, processes, the registry and notifications, and runs PowerShell commands. A dedicated browser mode keeps only web page content and drops the browser's own UI, supporting Chrome, Edge and Firefox. The server does not rely on computer vision and works with any model. It runs over stdio for a local client or over HTTP and SSE for remote access, where an auth key, an IP allowlist, TLS and OAuth can be enabled.

Who it is for. For engineers and QA who need an agent to drive Windows applications and UI and run scenarios.

Good fit when

  • You want an agent to open Windows apps, click and type for the user
  • You want to capture window and UI element state for checks or automation
  • You want to automate a browser scenario or run a manual QA test

Not a fit when

  • The target system is not Windows, the server uses Windows APIs for UI control
  • You cannot grant the agent direct access to the desktop and shell commands

Example request

Open the calculator, add the numbers in it and send a screenshot of the result

MCP

Transport
stdio, http, sse
Authentication
not required

Environment variables

WINDOWS_MCP_AUTH_KEY secret
Bearer token required on all HTTP requests for remote access, an alternative to the --auth-key flag.
WINDOWS_MCP_IP_ALLOWLIST
Comma-separated list of allowed client IPs or CIDR ranges.
WINDOWS_MCP_OAUTH_CLIENT_SECRET secret
OAuth client secret for HTTP transports, set together with WINDOWS_MCP_OAUTH_CLIENT_ID.
WINDOWS_MCP_SCREENSHOT_SCALE
Screenshot scale factor from 0.1 to 1.0, helps fit the result size limit on high-resolution displays.

Limitations

It runs only on Windows, with stated support from Windows 7 to 11, and needs Python 3.13+ and the uv package manager. English as the system language is preferred, otherwise the App tool is recommended to be disabled. The first run can take a minute or two while dependencies install and may time out, after which the server is restarted. For remote HTTP access you configure protection yourself: an auth key, an IP allowlist, TLS and OAuth are set through flags or environment variables.

How to disable. Remove the windows-mcp entry from the MCP client config and restart it. If you installed it as a background task via windows-mcp install, remove it with windows-mcp uninstall. Uninstall the package with uv tool uninstall windows-mcp.

FAQ

Do I need a separate computer vision model?

No. The server builds a UI element tree through UI Automation and works with any language model, vision is optional.

Can I expose it over the network?

Yes, there are HTTP and SSE transports, but you configure protection yourself: an auth key, an IP allowlist, TLS and OAuth are set through flags or environment variables.

How is Windows-MCP different from other computer control tools?

The server links the model to the Windows desktop directly: it takes a screenshot with the cursor position and window list, builds a UI element tree, clicks, types and works with files and PowerShell.

How do I download and connect Windows-MCP?

Nothing needs downloading separately. Add the windows-mcp server with the uvx command to the client config, as in the install block. It fits Claude Desktop, Claude Code and Cursor. Risk is high because the agent controls your system.

Discussion

No questions or reviews yet.

MCP server and wincli CLI: agents drive Windows apps by control name through UI Automation instead of screen coordinates

MCP serverBroad access131Repository stars

An MCP server for Windows: the agent moves the mouse, presses keys, manages windows and takes screenshots

MCP serverBroad access334Repository stars

An MCP server for remote Windows control: screenshots, PowerShell, files, mouse and keyboard, registry and OCR

MCP serverBroad access221Repository stars

The agent moves the mouse, types, drives windows and captures PNG screenshots of a Windows desktop through AutoIt.

MCP serverBroad access119Repository stars

An MCP server for macOS: the agent moves the mouse, types, manages windows and captures the screen when an app has no API

MCP serverBroad access415Repository stars
Official

An MCP server that lets an agent see the screen and control macOS, Windows and Linux: screenshots, clicks, OCR and screen memory

MCP serverBroad access92Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
Windows-MCP (this card)nonot required11,574
agent-desktopno22,602a Rust CLI for macOS
Ghost OSnonot required1,686a Swift MCP server for macOS
WinUtil CN MCPnonot required1,054MCP server for Windows

README in short

The README describes Windows-MCP as an MCP server that links agents to Windows and provides tools for file navigation, application control, UI interaction and QA testing. Install goes through uv and uvx windows-mcp serve, with stdio, streamable-http and sse transports available, plus a background task install via windows-mcp install. It details setup in Claude Desktop, Perplexity, Claude Code and through WSL. Separate sections cover remote access security, choosing which tools are enabled and environment variables. The package is on PyPI and in the MCP registry, MIT licensed.

README badge

Report a problem