Skip to content

Releases: RandyNorthrup/win32-mcp-server

v2.6.1

Choose a tag to compare

@RandyNorthrup RandyNorthrup released this 11 Jun 02:53

Fixed

  • Added types-psutil to the development extra so strict mypy passes in the Windows CI release matrix.

Verification

  • Local: ruff, mypy, pytest, Node syntax check, VSIX package, Python build, twine check.
  • GitHub Actions: CI passed on main and tag v2.6.1 for Python 3.10, 3.11, 3.12, and 3.13.
  • CodeQL passed on main and tag v2.6.1.

v2.5.1 — Fix UIA control types & mss thread-safety

Choose a tag to compare

@RandyNorthrup RandyNorthrup released this 23 Apr 01:26

What's Fixed

UIA Control Type Mapping

  • _get_control_class()\ now correctly resolves multi-word UIA control type names (TabItem, CheckBox, RadioButton, ComboBox, ScrollBar, etc.) using an explicit PascalCase lookup dictionary instead of broken .capitalize()\ logic that produced names like \TabitemControl\ instead of \TabItemControl.

mss Screen Capture Thread-Safety

  • Replaced the global mss singleton with \ hreading.local()\ per-thread instances. GDI device contexts are thread-affine on Windows — the singleton caused intermittent _thread._local srcdc\ errors when capture functions were dispatched to different threadpool threads via \�syncio.to_thread().

Cleanup

  • Removed unused \�texit/\contextlib\ imports from capture.py
  • Cleaned up \ ype: ignore\ annotations in server.py
  • Removed stale mypy overrides from pyproject.toml

Install

\
pip install win32-mcp-server==2.5.1
\\

The VSIX extension is attached for manual installation.

v2.1.0 Grid Overlay for Coordinate Accuracy

Choose a tag to compare

@RandyNorthrup RandyNorthrup released this 05 Mar 17:52

What's New

  • \capture_grid\ tool Captures the screen with a labelled coordinate grid overlay for precise pixel identification
    • DPI/zoom-aware: uses per-monitor DPI awareness for accurate coordinates
    • Resolution-adaptive: auto-picks grid spacing (coarse/normal/fine/ultra)
    • High-contrast dual-color rendering visible on any background (black outline + magenta/cyan lines + yellow labels on dark badges)
    • Supports multi-monitor, sub-region capture, all image formats
    • Region labels show absolute screen coordinates

Full Changelog

v2.0.0...v2.1.0

v2.0.0 Enterprise-Grade Modular Rewrite

Choose a tag to compare

@RandyNorthrup RandyNorthrup released this 04 Mar 00:37

What's New in v2.0.0

Complete modular rewrite from single-file server to enterprise-grade package with 47 tools (up from 25).

Highlights

  • Smart Automation Tools \click_text, \wait_for_text, \ ill_field, \execute_sequence, \get_window_snapshot,
    ight_click_menu, \�ssert_text_visible, \ ind_text_on_screen\
  • Structured OCR bounding boxes, confidence scores, and screen coordinates for every word
  • Fuzzy Window Matching find windows by partial title with intelligent suggestions (powered by RapidFuzz)
  • DPI-Aware Coordinates automatic per-monitor DPI awareness for high-resolution displays
  • Image Preprocessing auto, light_bg, dark_bg, high_contrast modes for better OCR accuracy
  • Screenshot Comparison pixel-level diff between current screen and a reference image
  • Multi-Step Sequences batch up to 50 tool calls in a single request
  • Robust Error Handling structured JSON errors with actionable suggestions

Architecture

Modular package structure with decorator-based tool registry:

  • \win32_mcp_server/config.py\ Dataclass configuration
  • \win32_mcp_server/registry.py\ Tool registration and dispatch
  • \win32_mcp_server/server.py\ MCP server entry point
  • \win32_mcp_server/utils/\ Coordinates, imaging, errors, window matching
  • \win32_mcp_server/tools/\ 8 tool modules (capture, ocr, mouse, keyboard, clipboard, window, process, smart)

Installation

\\�ash
pip install win32-mcp-server
\\

Full Changelog

v1.0.0...v2.0.0

Windows Automation Inspector v1.0.0

Choose a tag to compare

@RandyNorthrup RandyNorthrup released this 07 Dec 01:31

Initial release with 25 comprehensive tools for Windows automation: screen capture, OCR, mouse/keyboard control, window management, process control, and clipboard operations.