WinWright MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
git clone https://github.com/civyk-official/civyk-winwright
cd civyk-winwright

Then follow the repository README for any remaining dependency or build steps before continuing.

2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add win-wright -- node "<FULL_PATH_TO_CIVYK_WINWRIGHT>/dist/index.js"

Replace <FULL_PATH_TO_CIVYK_WINWRIGHT>/dist/index.js with the actual folder you prepared in step 1.

README.md

Windows automation server for the Model Context Protocol

WinWright

Windows automation server for the Model Context Protocol. ~59 consolidated tools for desktop (WPF, WinForms, Win32), browser (Chrome/Edge via CDP), and system management — all accessible to AI agents over MCP.

Describe tests in plain English — the AI agent does the rest

WinWright Demo

You write test cases in plain English. The AI agent uses WinWright's MCP tools to discover UI controls, perform actions, and record everything as a portable JSON script.

Replay recorded scripts — no AI agent needed

Run Script Demo

Once recorded, scripts run deterministically with winwright run — no AI agent, no LLM calls, no token costs. Results are the same every time.

If the UI layout changes, WinWright can self-heal broken selectors automatically (winwright heal). For larger UI redesigns, ask the AI agent to update the script — still faster than rewriting tests from scratch.

Why this matters:

  • Save AI costs — the agent records once, scripts replay for free
  • Deterministic results — every run produces identical, reproducible outcomes
  • Easy maintenance — self-healing selectors and AI-assisted script repair

Contents

Quick Start

Install, configure your MCP client, then ask the agent to do something:

"Launch Notepad, type 'Hello from WinWright', then read back what you typed."

The agent calls WinWright tools and returns results:

ww_launch    → { "processId": 12840, "mainWindowTitle": "Untitled - Notepad" }
ww_type      → { "success": true }
ww_get_value → { "value": "Hello from WinWright" }

Every tool returns structured JSON. The agent decides which tools to call and in what order — you describe the goal in plain language.

Install

Claude Code Plugin

From inside Claude Code, add the marketplace and install:

/plugin marketplace add civyk-official/civyk-winwright
/plugin install winwright@civyk-winwright

The plugin's install script downloads the latest binary automatically.

Note: WinWright has been submitted to the official Claude Code plugin directory and is pending review. Until approved, use the marketplace commands above to install.

Binary Download

Download from GitHub Releases:

Asset Architecture
winwright-*-win-x64.zip Intel/AMD 64-bit
winwright-*-win-arm64.zip ARM64 (Surface Pro, etc.)

MCP Client Configuration

Claude Code / VSCode (stdio)

{
  "servers": {
    "winwright": {
      "type": "stdio",
      "command": "C:/path/to/Civyk.WinWright.Mcp.exe",
      "args": ["mcp"]
    }
  }
}

Claude Code / VSCode (HTTP)

Start the server first: Civyk.WinWright.Mcp.exe serve --port 8765

{
  "servers": {
    "winwright": {
      "type": "http",
      "url": "http://localhost:8765/mcp"
    }
  }
}

Claude Desktop

{
  "mcpServers": {
    "winwright": {
      "command": "C:/path/to/Civyk.WinWright.Mcp.exe",
      "args": ["mcp"]
    }
  }
}

Use Cases

Each card links to a detailed walkthrough with real prompts, tool call parameters, and example output. Browse all guides in docs/use-cases/.

[Scripted UI Test Automation for CI](docs/use-cases/01-scripted-ci.md)

Record an AI session once — the agent discovers the UI, performs actions, embeds assertions — then export a portable JSON script that replays in CI without an AI agent. Describe your app or paste your existing manual test suite; the agent scripts it automatically.

[Autonomous Desktop Automation](docs/use-cases/02-desktop-automation.md)

Give an AI agent access to your desktop. It launches apps, moves data between them, fills forms, and takes screenshots for verification — no scripts to write or maintain.

[Legacy App Data Extraction](docs/use-cases/03-data-extraction.md)

Many enterprise apps have no API. If Windows UI Automation can see a control, WinWright can read its value. Extract data from apps that were never built for integration.

[Scripted Desktop Automation for Repeated Tasks](docs/use-cases/04-scripted-desktop-

Tools (3)

ww_launchLaunches a Windows application and returns process details.
ww_typeTypes text into the active or specified UI control.
ww_get_valueRetrieves the value from a specific UI control.

Configuration

claude_desktop_config.json
{
  "mcpServers": {
    "winwright": {
      "command": "C:/path/to/Civyk.WinWright.Mcp.exe",
      "args": ["mcp"]
    }
  }
}

Try it

Launch Notepad, type 'Hello from WinWright', then read back what you typed.
Find the 'Submit' button in the open application and click it.
Extract the text content from the main data grid in the legacy accounting app.
Record a test script that logs into the desktop application and verifies the dashboard loads.

Frequently Asked Questions

What are the key features of WinWright?

Supports automation for WPF, WinForms, and Win32 desktop applications. Browser automation for Chrome and Edge via CDP. Self-healing selectors for UI layout changes. Deterministic script recording and replay without LLM costs. Over 59 consolidated tools for system and UI management.

What can I use WinWright for?

Scripted UI test automation for CI/CD pipelines. Autonomous desktop task automation for repetitive workflows. Data extraction from legacy enterprise applications without APIs. Automated form filling and data entry across multiple desktop apps.

How do I install WinWright?

Install WinWright by running: /plugin marketplace add civyk-official/civyk-winwright /plugin install winwright@civyk-winwright

What MCP clients work with WinWright?

WinWright works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep WinWright docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare