Win Mind

io.github.jhonpork1233-beep由 GitHub 帳號 jhonpork1233-beep 發布v0.2.0更新於 Nov 4, 2026

See and drive any Windows app via the accessibility tree - no screenshots - plus 200+ native tools

概覽

AI 產生的概覽

Windows MCP 伺服器,讓 AI 透過無障礙樹讀取並操控任何應用程式,另附 200 多個原生系統、網路與健康檢查工具。

可以做什麼
  • 讀取並操作應用程式介面:編號的無障礙樹、讀取文字、尋找文字、依名稱或參照執行操作、查看焦點元素
  • 檢視與管理視窗、虛擬桌面與已儲存的工作區
  • 診斷電腦:健康掃描、變慢原因分析、磁碟與電池健康、可靠性記錄、CPU/GPU 指標、影格率與卡頓
  • 追蹤並排查系統與網路:ETW 行程/DNS/檔案/網路事件、連接埠與行程對應、DNS 快取、Wi-Fi 掃描
  • 檢查隱私與安全:攝影機與麥克風占用、Defender、BitLocker、USB 紀錄、啟動項目
  • 在防護規則下管理檔案、行程、服務與登錄檔,並提供顯示、音訊、媒體、語音及明確的視窗截圖
適用情境
適合讓助理在不截圖、不移動滑鼠的情況下操作 Windows 桌面應用程式,包括被其他視窗遮住的应用程式;也適合用一個伺服器在對話中完成 Windows 診斷、網路排查與系統管理。
執行需求
Windows 10/11 與 Python 3.10+;可在 Claude Desktop 安裝 .mcpb 套件(需要 uv),或安裝後讓用戶端指向 python.exe 的完整路徑。部分工具需要選用的原生輔助元件,須以 Visual Studio 2022 Build Tools 與 Windows SDK 建置;僅限系統管理員的工具需以管理員身分執行。
安裝前請注意
以目前使用者權限執行且可變更系統;有 16 個工具標示為破壞性,檔案、登錄檔與行程工具可能寫入或刪除。截圖僅以明確工具提供。除非必要請以非管理員身分執行,並在使用前閱讀安全說明。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Win Mind,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

WinMind

[CI] [License: Apache-2.0] [Platform: Windows 10/11] [Python 3.10+] [MCP] [Tools: 222]

A Windows MCP server that lets an AI see and drive any app through the accessibility tree - no screenshots, no mouse, no pixel guessing - plus 200+ native Windows tools.

Most computer-use agents look at the screen: take a screenshot, send thousands of image tokens to a model, guess coordinates, click, take another screenshot. WinMind reads what Windows already knows. Every app publishes its buttons, text boxes, lists and text to UI Automation, the accessibility layer screen readers like Narrator and NVDA use. WinMind turns that into a compact, numbered tree an AI can read in one call and act on in the next - even when the app is behind other windows.

WhatsApp  (WhatsApp.Root.exe, window)├─ [6] banner│  ├─ [7] button "Chats" (42) checked [toggle]│  ├─ [8] button "Calls" (4) unchecked [toggle]├─ [20] textbox "Search or start a new chat" [set_value]├─ [21] tabs "chat-list-filters" (4)│  ├─ [22] tab "All" selected [select]│  ├─ [23] tab "Unread 42" [select]├─ [26] grid "Chat list" (9)│  ├─ [29] row "Alex Yesterday Photo" [click]│  ├─ [30] row "Study Group 3 unread messages Yesterday" [click]└─ [37] button "Send document" [click]

ui_act(ref=30) opens that chat. ui_act(name="Play", title_contains="spotify") plays music. No screenshot was taken.

Why it's different

Screenshot agentsWinMind
What the model getsimages (thousands of tokens each)a text tree with real names, states and actions
Speed per lookseconds (capture + vision model)0.1-0.3 s for a whole app (one cross-process call)
Clickingpixel coordinates, moves your mousethe app's own accessibility actions - your mouse never moves
Apps behind other windowsmust bring them to frontreads and acts in the background
Text in editors/documentsOCRexact text from the app (TextPattern)

Things WinMind handles that trip up simpler UI Automation tools (details in docs/ARCHITECTURE.md):

  • Chromium-based apps behind other windows (Discord, Spotify, Steam, Teams, VS Code) expose no content while covered - Chromium's occlusion tracking pauses them. WinMind wakes them properly once; the tree then stays readable in the background. It never pulls a window over a full-screen game.
  • WinUI 3 apps that host WebView2 (WhatsApp) loop back into their own web content - naive scans fetch the same elements thousands of times. WinMind splits and de-duplicates: 7.3 s -> 0.25 s.
  • Web clicks that silently do nothing: pressing a list item whose click handler sits on an inner link. WinMind performs the default action of the element that really owns the click - without moving the mouse.
  • Buttons and text in one tree: editor/document content comes through next to the controls.
  • Finds apps by process, not just title (Spotify's title is the song playing), including apps hidden in the tray.
  • Token budget: 222 tool definitions cost ~32k tokens (143 per tool); long outputs are trimmed with a note saying what was cut; errors are one actionable line, not tracebacks.

What's in the box (222 tools)

AreaExamples
UI automationui_tree, ui_map, ui_act, ui_read, ui_find_text, ui_element_at, ui_focused
Health & diagnosticsfull_health_scan, why_is_my_pc_slow, smart_disk_health, battery_health, reliability_records
Hardware & gamingCPU/GPU metrics, temperatures, fans, FPS / frame times / stutter / GPU-bottleneck (PresentMon)
Live OS tracingETW process / DNS / file / network events
Networkwhy_no_internet, port_process_map, whats_on_port, DNS cache, Wi-Fi scan
Privacy & securitywhats_using_my_webcam / _mic, Defender, BitLocker, USB history, startup entries
Windows & desktopswindows, virtual desktops, saved workspaces
Files, processes, services, registrywith guards against system folders, critical keys and core OS processes
Display, audio, media, speechper-app volume, now-playing + media control, brightness, night light, TTS
Screen capture (explicit only)capture_window_image renders one window even when it's covered

Full list with one line per tool: TOOLS.md. An AI can also call tool_guide for a categorized index.

Quick start

One-click: Claude Desktop

Download winmind-mcp-<version>.mcpb from Releases and open it - Claude Desktop installs it like a browser extension (it needs uv, which sets up the Python dependencies for you). The bundle includes the native helpers.

Any MCP client (Claude Code, Cursor, VS Code, local models...)

Requirements: Windows 10/11, Python 3.10+.

powershell
git clone https://github.com/jhonpork1233-beep/win-mindcd win-mindpip install -e .

Add it to your MCP client. Use the full path to Python so a changed PATH can never break it:

jsonc
// Claude Desktop / Claude Code (~/.claude.json "mcpServers") / any MCP client{  "winmind": {    "command": "C:\\Path\\To\\Python\\python.exe",    "args": ["-m", "winmind"]  }}

Claude Code shortcut: claude mcp add winmind -- "C:\Path\To\Python\python.exe" -m winmind

Then ask things like "what's in my WhatsApp unread chats?", "play my liked songs on Spotify", "why is my PC slow?", "screenshot Notepad without switching windows".

Optional native helpers

The core (UI engine, files, processes, registry, health, network...) is pure Python. Some tools use small native helpers - live event hooks, ETW, window streaming, virtual desktops, the WinRT broker (media, notifications), HUD overlays, PresentMon. Build them from source in native/:

powershell
powershell -ExecutionPolicy Bypass -File scripts\build_all.ps1

(Visual Studio 2022 Build Tools with the C++ workload and Windows SDK; MinGW g++ for winmind_native.dll.) Tools whose helper isn't built say so and name the script to run.

Using it efficiently (for AI clients and prompt writers)

  • Start with ui_tree (structure) or ui_read (just the text) - not screenshots.
  • Act by name when it's unambiguous: ui_act(name="Search", title_contains="spotify"); by ref otherwise.
  • Prefer summary tools (full_health_scan, system_health_summary, windows_summary) over raw listings (appx_packages, service_list, port_process_map).
  • Every tool accepts detail=true (no trimming), compact=true (short keys).
  • Clients with deferred tool loading (e.g. Claude Code's tool search) only load the definitions they use.

Safety

WinMind runs with your user's rights and can change your system - that's its purpose. Read SECURITY.md.

  • Every tool carries MCP risk annotations (readOnlyHint, destructiveHint) so clients can ask before risky calls; 16 tools are marked destructive.
  • Built-in guards: file tools refuse Windows/System32/Program Files and drive roots; registry writes/deletes refuse critical keys; process tools refuse core OS processes.
  • The UI engine never takes screenshots and never moves the mouse. Screen capture exists only as explicit tools.
  • No telemetry. Everything WinMind writes stays in %LOCALAPPDATA%\WinMind (override with WINMIND_HOME).
  • Run it non-elevated unless you need admin-only tools.

Testing

powershell
pip install -e .[dev]python tests\audit_tools.py tests\audit.json     # calls every safe tool, sandbox-tests the write toolspython tests\audit_summary.py tests\audit.json

The audit only writes to a temp folder, the throwaway registry key HKCU\Software\WinMindAudit, a process it starts itself and its own Notepad window. Current results: 102/109 read-only tools OK (the rest need admin rights, a running session or an open Office document), 37/37 sandbox and guard tests pass.

Roadmap

  • Java Access Bridge (Java/Swing apps), IAccessible2 text for Firefox/LibreOffice
  • Stable selectors and recorded workflows
  • Live UI event stream (tree deltas instead of re-reading)
  • UI Automation Remote Operations for even faster trees
  • One-click installs: Claude Desktop extension, Windows agent connector (On-Device Registry)
  • Public head-to-head benchmark against other Windows MCP servers

License

Apache-2.0. Third-party components: THIRD_PARTY_NOTICES.md.

來源:README.md,提交 da8f80a

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.0最新Sep 30, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分