# faze79/WPFVisualTreeMcp [Health: Active]

**Category:** 🖥️ OS Automation  
**Repository:** https://github.com/faze79/WPFVisualTreeMcp  
**GitHub Stars:** 15  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/faze79-wpfvisualtreemcp

## Description
⃣ 🏠 🪟 - Inspect, debug and drive running WPF (.NET desktop) apps: visual tree, dependency properties, data bindings and binding errors, DataContext, and screenshots with open popups/menus included, plus clicking, item selection, text input and keyboard shortcuts. Auto-injects into any running WPF process (x64/x86) with no source changes. dotnet tool install -g WpfVisualTreeMcp

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "wpfvisualtreemcp": {
    "command": "npx",
    "args": ["-y","faze79-wpfvisualtreemcp"]
  }
}
```

## Documentation

## What faze79/WPFVisualTreeMcp MCP server does

faze79/WPFVisualTreeMcp MCP server connects an MCP client to a running Windows Presentation Foundation application. It is intended for inspecting and operating desktop WPF interfaces rather than browser pages, source files, or generic screen images. The server can discover running WPF processes, inspect their visual and logical trees, read dependency properties, and search for controls by type, name, or property values.

The inspection surface includes binding definitions, converter and formatting details, DataContext information, inherited DataContext relationships, resource dictionaries, styles, templates, layout metrics, and captured binding errors. It can also export tree data as JSON or XAML. Screenshots can cover individual elements or windows, with a screen capture mode for open popups and menus.

## How it works

faze79/WPFVisualTreeMcp MCP server injects its inspector into a selected running WPF process. The target application does not need source changes, a build-time package, or an in-process probe. The injector supports both 64-bit and 32-bit WPF targets through a bundled helper, allowing a 64-bit server to inspect a 32-bit application.

The default executable mode is an MCP server over standard input and output. MCP clients send tool calls for discovery, inspection, waiting, screenshots, and interaction. A recognized command-line subcommand switches the same executable into one-shot CLI mode; command results are written as JSON to standard output, while diagnostics go to standard error.

Interaction uses several mechanisms depending on the operation. Clicking can use UI Automation patterns such as Invoke, Toggle, Select, and ExpandCollapse, or a physical OS mouse click. Text entry supports UI Automation value setting with WPF property fallbacks, while physical mode types through the OS keyboard. Keyboard shortcuts can be sent to an element or the focused window.

## Setup and configuration

faze79/WPFVisualTreeMcp MCP server requires Windows 10 or 11, the .NET 8 SDK or later, and a WPF application that is currently running. The documented NuGet installation is:

```bash
dotnet tool install -g WpfVisualTreeMcp
```

The package also supports launching the MCP server with:

```bash
dnx WpfVisualTreeMcp
```

Alternatively, download the Windows release archive, extract it, and register `WpfVisualTreeMcp.Server.exe` as the MCP client's command with no arguments. The repository also documents building the project from source with `dotnet build -c Release`.

## Tools and capabilities

Supported operations include:

- Discover running WPF processes and navigate visual or logical trees.
- Search deeply, including popup and adorner content, using element properties.
- Inspect dependency properties, bindings, DataContext values, resources, styles, and templates.
- Capture screenshots, highlight elements, watch property changes, and wait for UI conditions.
- Click controls, select items, enter text, send keyboard shortcuts, and export trees.

## Limitations and notes

The server is Windows-specific and targets WPF desktop applications. It requires a running target process; it is not described as a browser automation or cross-platform UI server. Installation and release instructions require the .NET 8 runtime or SDK as applicable. Physical input methods interact with the operating system, so their behavior depends on the target window and focus state. No API key or external service credential is specified in the provided setup instructions.

_Full upstream README: https://allmcps.com/mcp/faze79-wpfvisualtreemcp/readme_

