Skip to main content

Lightweight MCP Server for interacting with Windows Operating System.

Project description

MseeP.ai Security Assessment Badge

🪟 Windows-MCP

License Python Platform: Windows 7 to 11 Last Commit
Follow on Twitter Join us on Discord

Windows MCP is a lightweight, open-source project that enables seamless integration between AI agents and the Windows operating system. Acting as an MCP server bridges the gap between LLMs and the Windows operating system, allowing agents to perform tasks such as file navigation, application control, UI interaction, QA testing, and more.

mcp-name: io.github.CursorTouch/Windows-MCP

Updates

  • v0.6.2: Extended boolean parameter compatibility and updated manifest.json for mcpb compatibility in Claude Desktop (Thanks to bryan-anthropic).
  • v0.6.1: Fixed Shell tool output issues and improved boolean parameter compatibility (Thanks to @yakub268).
  • Windows-MCP reached 1M+ Users in Claude Desktop Extensiosn.
  • Windows-MCP is now available on PyPI (thus supports uvx windows-mcp)
  • Windows-MCP is added to MCP Registry
  • Try out 🪟Windows-Use!!, an agent built using Windows-MCP.
  • Windows-MCP is now featured as Desktop Extension in Claude Desktop.

Supported Operating Systems

  • Windows 7
  • Windows 8, 8.1
  • Windows 10
  • Windows 11

🎥 Demos

https://github.com/user-attachments/assets/d0e7ed1d-6189-4de6-838a-5ef8e1cad54e

https://github.com/user-attachments/assets/d2b372dc-8d00-4d71-9677-4c64f5987485

✨ Key Features

  • Seamless Windows Integration
    Interacts natively with Windows UI elements, opens apps, controls windows, simulates user input, and more.

  • Use Any LLM (Vision Optional) Unlike many automation tools, Windows MCP doesn't rely on any traditional computer vision techniques or specific fine-tuned models; it works with any LLMs, reducing complexity and setup time.

  • Rich Toolset for UI Automation
    Includes tools for basic keyboard, mouse operation and capturing window/UI state.

  • Lightweight & Open-Source
    Minimal dependencies and easy setup with full source code available under MIT license.

  • Customizable & Extendable
    Easily adapt or extend tools to suit your unique automation or AI integration needs.

  • Real-Time Interaction
    Typical latency between actions (e.g., from one mouse click to the next) ranges from 0.2 to 0.9 secs, and may slightly vary based on the number of active applications and system load, also the inferencing speed of the llm.

  • DOM Mode for Browser Automation
    Special use_dom=True mode for State-Tool that focuses exclusively on web page content, filtering out browser UI elements for cleaner, more efficient web automation.

🛠️Installation

Note: When you install this MCP server for the first time it may take a minute or two because of installing the dependencies in pyproject.toml. In the first run the server may timeout ignore it and restart it.

Prerequisites

  • Python 3.13+
  • UV (Package Manager) from Astra, install with pip install uv or curl -LsSf https://astral.sh/uv/install.sh | sh
  • English as the default language in Windows highly preferred or disable the App-Tool in the MCP Server for Windows with other languages.
Install in Claude Desktop
  1. Install Claude Desktop and
npm install -g @anthropic-ai/mcpb
  1. Configure the extension:

Option A: Install from PyPI (Recommended)

Use uvx to run the latest version directly from PyPI.

Add this to your claude_desktop_config.json:

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

Option B: Install from Source

  1. Clone the repository:
git clone https://github.com/CursorTouch/Windows-MCP.git
cd Windows-MCP
  1. Add this to your claude_desktop_config.json:
{
  "mcpServers": {
    "windows-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "<path to the windows-mcp directory>",
        "run",
        "windows-mcp"
      ]
    }
  }
}
  1. Open Claude Desktop and enjoy! 🥳

  2. Enjoy 🥳.

For additional Claude Desktop integration troubleshooting, see the MCP documentation. The documentation includes helpful tips for checking logs and resolving common issues.

Install in Perplexity Desktop
  1. Install Perplexity Desktop:

  2. Clone the repository.

git clone https://github.com/CursorTouch/Windows-MCP.git

cd Windows-MCP
  1. Open Perplexity Desktop:

Go to Settings->Connectors->Add Connector->Advanced

  1. Enter the name as Windows-MCP, then paste the following JSON in the text area.

Option A: Install from PyPI (Recommended)

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

Option B: Install from Source

{
  "command": "uv",
  "args": [
    "--directory",
    "<path to the windows-mcp directory>",
    "run",
    "windows-mcp"
  ]
}
  1. Click Save and Enjoy 🥳.

For additional Claude Desktop integration troubleshooting, see the Perplexity MCP Support. The documentation includes helpful tips for checking logs and resolving common issues.

Install in Gemini CLI
  1. Install Gemini CLI:
npm install -g @google/gemini-cli
  1. Configure the server in %USERPROFILE%/.gemini/settings.json:

  2. Navigate to %USERPROFILE%/.gemini in File Explorer and open settings.json.

  3. Add the windows-mcp config in the settings.json and save it.

{
  "theme": "Default",
  ...
  "mcpServers": {
    "windows-mcp": {
      "command": "uvx",
      "args": [
        "windows-mcp"
      ]
    }
  }
}

Note: To run from source, replace the command with uv and args with ["--directory", "<path>", "run", "windows-mcp"].

  1. Rerun Gemini CLI in terminal. Enjoy 🥳
Install in Qwen Code 1. Install Qwen Code:
npm install -g @qwen-code/qwen-code@latest
  1. Configure the server in %USERPROFILE%/.qwen/settings.json:

  2. Navigate to %USERPROFILE%/.qwen/settings.json.

  3. Add the windows-mcp config in the settings.json and save it.

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

Note: To run from source, replace the command with uv and args with ["--directory", "<path>", "run", "windows-mcp"].

  1. Rerun Qwen Code in terminal. Enjoy 🥳
Install in Codex CLI 1. Install Codex CLI:
npm install -g @openai/codex
  1. Configure the server in %USERPROFILE%/.codex/config.toml:

  2. Navigate to %USERPROFILE%/.codex/config.toml.

  3. Add the windows-mcp config in the config.toml and save it.

[mcp_servers.windows-mcp]
command="uvx"
args=[
  "windows-mcp"
]

Note: To run from source, replace the command with uv and args with ["--directory", "<path>", "run", "windows-mcp"].

  1. Rerun Codex CLI in terminal. Enjoy 🥳

🔨MCP Tools

MCP Client can access the following tools to interact with Windows:

  • Click: Click on the screen at the given coordinates.
  • Type: Type text on an element (optionally clears existing text).
  • Scroll: Scroll vertically or horizontally on the window or specific regions.
  • Move: Move mouse pointer or drag (set drag=True) to coordinates.
  • Shortcut: Press keyboard shortcuts (Ctrl+c, Alt+Tab, etc).
  • Wait: Pause for a defined duration.
  • Snapshot: Combined snapshot of default language, browser, active apps and interactive, textual and scrollable elements along with screenshot of the desktop. Supports use_dom=True for browser content extraction (web page elements only) and use_vision=True for including screenshots.
  • App: To launch an application from the start menu, resize or move the window and switch between apps.
  • Shell: To execute PowerShell commands.
  • Scrape: To scrape the entire webpage for information.

🤝 Connect with Us

Stay updated and join our community:

Star History

Star History Chart

👥 Contributors

Thanks to all the amazing people who have contributed to Windows-MCP! 🎉

We appreciate every contribution, whether it's code, documentation, bug reports, or feature suggestions. Want to contribute? Check out our Contributing Guidelines!

🔒 Security

Important: Windows-MCP operates with full system access and can perform irreversible operations. Please review our comprehensive security guidelines before deployment.

For detailed security information, including:

  • Tool-specific risk assessments
  • Deployment recommendations
  • Vulnerability reporting procedures
  • Compliance and auditing guidelines

Please read our Security Policy.

📊 Telemetry

Windows-MCP collects usage data to help improve the MCP server. No personal information, no tool arguments, no outputs are tracked.

To disable telemetry, add the following to your MCP client configuration:

{
  "mcpServers": {
    "windows-mcp": {
      "command": "uvx",
      "args": [
        "windows-mcp"
      ],
      "env": {
        "ANONYMIZED_TELEMETRY": "false"
      }
    }
  }
}

For detailed information on what data is collected and how it is handled, please refer to the Telemetry and Data Privacy section in our Security Policy.

📝 Limitations

  • Selecting specific sections of the text in a paragraph, as the MCP is relying on a11y tree. (⌛ Working on it.)
  • Type-Tool is meant for typing text, not programming in IDE because of it types program as a whole in a file. (⌛ Working on it.)
  • This MCP server can't be used to play video games 🎮.

🪪 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgements

Windows-MCP makes use of several excellent open-source projects that power its Windows automation features:

Huge thanks to the maintainers and contributors of these libraries for their outstanding work and open-source spirit.

🤝Contributing

Contributions are welcome! Please see CONTRIBUTING for setup instructions and development guidelines.

Made with ❤️ by CursorTouch

Citation

@software{
  author       = {CursorTouch},
  title        = {Windows-MCP: Lightweight open-source project for integrating LLM agents with Windows},
  year         = {2024},
  publisher    = {GitHub},
  url={https://github.com/CursorTouch/Windows-MCP}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

windows_mcp-0.6.2.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

windows_mcp-0.6.2-py3-none-any.whl (113.2 kB view details)

Uploaded Python 3

File details

Details for the file windows_mcp-0.6.2.tar.gz.

File metadata

  • Download URL: windows_mcp-0.6.2.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for windows_mcp-0.6.2.tar.gz
Algorithm Hash digest
SHA256 3f9fc7f63019b15fbc73654f82de46101f7d00baabc164810d8c628628714201
MD5 5386ddb9ec0607057923ef84e8241baf
BLAKE2b-256 60cd80a15497da6efcdfd549635f2cf480bdfc8312c6d0f84a08a0599dad542b

See more details on using hashes here.

File details

Details for the file windows_mcp-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: windows_mcp-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 113.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for windows_mcp-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a7d413a271263785df3d08ace41ed6d6245ed510d4e10abdf6b454e09951fd8c
MD5 8f28946562147359cc4dc2f819874e7c
BLAKE2b-256 c3c40efa7325fef0a8596dd379ffb8421d05355d0512a42f115d2705a1893225

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page