MCP Windows Desktop Automation

MCP Windows Desktop Automation

A Model Context Protocol server that wraps AutoIt functionality, enabling LLMs to automate Windows desktop tasks including mouse/keyboard operations, window management, and UI control interactions.

mario-andreschak

OS Automation
Visit Server

README

MCP Windows Desktop Automation

A Model Context Protocol (MCP) server for Windows desktop automation using AutoIt.

Overview

This project provides a TypeScript MCP server that wraps the node-autoit-koffi package, allowing LLM applications to automate Windows desktop tasks through the MCP protocol.

The server exposes:

  • Tools: All AutoIt functions as MCP tools
  • Resources: File access and screenshot capabilities
  • Prompts: Templates for common automation tasks

Features

  • Full wrapping of all AutoIt functions as MCP tools
  • Support for both stdio and WebSocket transports
  • File access resources for reading files and directories
  • Screenshot resources for capturing the screen or specific windows
  • Prompt templates for common automation tasks
  • Strict TypeScript typing throughout

Installation

# Clone the repository
git clone https://github.com/yourusername/mcp-windows-desktop-automation.git
cd mcp-windows-desktop-automation

# Install dependencies
npm install

# Build the project
npm run build

Usage

Starting the Server

# Start with stdio transport (default)
npm start

# Start with WebSocket transport
npm start -- --transport=websocket --port=3000

# Enable verbose logging
npm start -- --verbose

Command Line Options

  • --transport=stdio|websocket: Specify the transport protocol (default: stdio)
  • --port=<number>: Specify the port for WebSocket transport (default: 3000)
  • --verbose: Enable verbose logging

Tools

The server provides tools for:

  • Mouse operations: Move, click, drag, etc.
  • Keyboard operations: Send keystrokes, clipboard operations, etc.
  • Window management: Find, activate, close, resize windows, etc.
  • Control manipulation: Interact with UI controls, buttons, text fields, etc.
  • Process management: Start, stop, and monitor processes
  • System operations: Shutdown, sleep, etc.

Resources

The server provides resources for:

  • File access: Read files and list directories
  • Screenshots: Capture the screen or specific windows

Prompts

The server provides prompt templates for:

  • Window interaction: Find and interact with windows
  • Form filling: Automate form filling tasks
  • Automation tasks: Create scripts for repetitive tasks
  • Monitoring: Wait for specific conditions

Development

# Run in development mode
npm run dev

# Lint the code
npm run lint

# Run tests
npm run test

License

MIT

Recommended Servers

Claude Code MCP

Claude Code MCP

An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.

Featured
Local
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.

Featured
Local
JavaScript
Beamlit MCP Server

Beamlit MCP Server

An MCP server implementation that enables seamless integration between Beamlit CLI and AI models using the Model Context Protocol standard.

Official
TypeScript
ThingsPanel MCP

ThingsPanel MCP

An integration server that connects AI models with ThingsPanel IoT platform, allowing AI assistants to interact with IoT devices through natural language for device control, data retrieval, and management operations.

Official
Python
systemd-coredump MCP Server

systemd-coredump MCP Server

Enables MCP-capable applications to access, manage, and analyze system core dumps through integration with systemd-coredump functionality.

Local
JavaScript
Terminal Controller for MCP

Terminal Controller for MCP

An MCP server that enables secure terminal command execution, directory navigation, and file system operations through a standardized interface for LLMs.

Local
Python
Apple Shortcuts Server

Apple Shortcuts Server

An MCP Server Integration with Apple Shortcuts

Local
JavaScript
mac-apps-launcher

mac-apps-launcher

An MCP server to list and launch applications on MacOS

Local
JavaScript
applescript-mcp

applescript-mcp

Enables LLM applications to interact with macOS through AppleScript.

Local
TypeScript
Bazel MCP Server

Bazel MCP Server

A local MCP server that exposes Bazel build system functionality to AI agents, allowing them to build, test, query, and manage Bazel projects through natural language even in environments where Bazel can't be directly accessed.

Local
JavaScript