About Uiautomation
Uiautomation is an MCP server in the Automation category: windows UI Automation toolkit with CLI, MCP server, and VS Code extension.
Install
git clone https://github.com/trsdn/mcp-server-uiautomationThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Uiautomation
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
UIAutomationMcp
Windows UI Automation toolkit with three aligned entry points:
- CLI (
uiamcp) - MCP server (
UIAutomationMcp.McpServer) - VS Code extension (
uia-mcp)
Lineage
This repository is part of the broader MCP automation lineage and intentionally keeps attribution to earlier work by Stefan Brönner.
It also keeps the historical reference to Excel MCP as a related sibling project in that lineage, even though this repository itself is focused on Windows UI Automation.
What it does
- boots a typed UI Automation client through
Interop.UIAutomationClient - reads rich desktop-root and focused-element metadata, including bounds, runtime IDs, and supported patterns
- resolves elements from native window handles and screen coordinates
- searches UIA trees by name, class name, automation id, framework id, control type, and process id
- enumerates immediate children from raw, control, or content tree views
- enumerates descendants from raw, control, or content tree views
- navigates the UIA tree with raw, control, and content walkers
- supports build-cache requests for inspection, search, and navigation
- reads text, selection, and key pattern states
- waits for focus, automation, property-changed, and structure-changed events
- performs common actions such as focus, invoke, set-value, toggle, expand/collapse, selection, window state changes, move/resize, scroll, and range-value updates
- exposes the same expanded surface through CLI and MCP
- packages the CLI and MCP server inside the VS Code extension
Repository layout
src\UIAutomationMcp.ComInteropsrc\UIAutomationMcp.Servicesrc\UIAutomationMcp.CLIsrc\UIAutomationMcp.McpServersrc\UIAutomationMcp.Smokevscode-extension
Build and validate
dotnet build .\UIAutomationMcp.sln -c Release
.\src\UIAutomationMcp.Smoke\bin\Release\net9.0-windows\UIAutomationMcp.Smoke.exe
.\src\UIAutomationMcp.CLI\bin\Release\net9.0-windows\uiamcp.exe inspect --root --cache
.\src\UIAutomationMcp.CLI\bin\Release\net9.0-windows\uiamcp.exe find --focused --scope children --max-results 10 --cache
.\src\UIAutomationMcp.CLI\bin\Release\net9.0-windows\uiamcp.exe children --focused --view raw --max-results 10
.\src\UIAutomationMcp.CLI\bin\Release\net9.0-windows\uiamcp.exe descendants --focused --view raw --max-results 25
.\src\UIAutomationMcp.CLI\bin\Release\net9.0-windows\uiamcp.exe wait-event --event-kind focus --timeout-ms 500
.\src\UIAutomationMcp.CLI\bin\Release\net9.0-windows\uiamcp.exe action focus --focused
Related docs
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.