
UTM Watch
io.github.DarrickBM由 GitHub 帳號 DarrickBM 發布v0.7.1更新於 Nov 12, 2026
Read-only history of UTM VMs on a Mac: CPU, memory, disk, network, ping, incidents (macOS only).
發布方自己的服務:watch.diy – DIY Store Finder
概覽
唯讀 MCP 伺服器,讓助理查詢 Mac 上 UTM 虛擬機的歷史紀錄,說明卡頓與資源使用情況。
- 可以做什麼
- 找出異常事件,並依虛擬機彙總某段時間內發生什麼事
- 查看某一時刻的全部紀錄,或某台虛擬機、Mac、網路的單一指標隨時間變化
- 列出虛擬機啟動與停止、記憶體壓力、置換、CPU 上限、Wi-Fi 變化等事件
- 讀取所有虛擬機、Mac 與網路的最新取樣
- 列出叢集中的各台 Mac,並依名稱或 UUID 查詢任一台
- 適用情境
- 當有人反映某台虛擬機或遠端連線變慢,希望助理查閱歷史紀錄而不是憑空猜測時適用。也適合在執行 UTM 的 Mac 上查看目前虛擬機負載、磁碟用量與網路品質。
- 執行需求
- 需要 Apple 晶片的 Mac 並安裝 UTM Watch 應用程式;MCP 伺服器程式隨應用程式包提供,透過標準輸入輸出在本機執行。應用程式需要存取其他應用程式資料、控制 UTM 及本機網路等 macOS 權限。叢集查詢需要已加入的 hub。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 UTM Watch,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
UTM Watch: a VM monitor for UTM on Mac
See what each of your UTM virtual machines is doing, and find out why one was slow.
[macOS 14+] [Apple silicon] [MCP server] [License: MIT]
Install · Features · AI diagnosis · Fleet · Terminal tool · How it works
[UTM Watch detail window with a pinned moment]
Why UTM Watch
UTM shows whether a VM is on or off. Activity Monitor shows two processes with the same name. Neither tells you which VM is eating the CPU, how close you are to running out of memory, or whether the lag your remote user felt came from the VM, the Mac, or the Wi-Fi. UTM Watch does.
Features
-
Every VM by name, with CPU, memory, how full its disk is, network and ping, live in the menu bar.
-
A quick look without opening a window: hover the menu bar item for every VM and the Mac at a glance. Click it for the full window.
-
Recorded history you can scrub back through, to see exactly what was happening at a past moment.
-
The whole connection path: ping to each VM, to your router and to the internet, plus Wi-Fi or Ethernet link quality, so you can tell a slow VM from a slow network.
-
Fleets: several Macs report to one hub, and one window shows every Mac and its VMs. Free, with no accounts.
-
AI diagnosis through a read-only MCP server: ask an agent such as Claude why a VM was slow, on this Mac or any Mac in the fleet, and it reads the history and tells you.
-
Works with both UTM backends: Apple Virtualization and QEMU, with macOS, Linux and Windows guests.
UTM Watch is an independent project. It is not affiliated with or endorsed by the UTM project.
Install
Requires an Apple silicon Mac. Built and tested on macOS 26; set to run on macOS 14 or later, but older versions are untested.
One command (recommended). Installs the menu bar app into /Applications and the utmwatch terminal tool, then starts the app:
The script is short; read it first if you prefer: install.sh.
Or by hand. Download UTMWatch-<version>-macos-arm64.dmg from the latest release, open it, and drag UTM Watch into Applications. The app is not notarized by Apple, so the first time macOS will refuse to open it. Go to System Settings, then Privacy & Security, and click Open Anyway, or run this once:
First launch. macOS asks for three permissions: access to data from other apps (UTM's VM files), control of UTM, and the local network (pings to your router and VMs). The app keeps working if you deny one, with less detail.
[!IMPORTANT] After an update, give the permissions again. macOS treats the updated app as new. It asks for control of UTM again, and it may refuse UTM's VM files until you turn Full Disk Access for UTM Watch off and on again in System Settings › Privacy & Security, then quit UTM Watch and open it again. If it keeps refusing, use Reset and ask again… in UTM Watch's Settings › Permissions. Until then VMs show without their names, limits or disk usage.
What is in the box
History is stored in ~/Library/Application Support/UTM Watch/history.sqlite.
AI diagnosis with an MCP server
The app bundle contains utmwatch-mcp, a read-only Model Context Protocol server over standard input/output. An agent on this Mac can use it to read the recorded history and work out why a VM was slow. Connect Claude Code with:
Then ask, for example: "A user says connecting to one of my VMs is sometimes slow. Use utm-watch to find out why."
[Claude answering why the VMs were slow, from UTM Watch's history]
Access can be switched off in the app's Settings under AI diagnosis.
Monitor several Macs as a fleet
[The Fleet window on the hub Mac: every Mac with its VMs]
UTM Watch on one Mac needs nothing below. With several Macs, one of them hosts a hub and the others report to it; the hub Mac can then open Open Fleet from the menu bar item and see every Mac's VMs, and click a Mac for its history. The other Macs only report: they cannot see the fleet.
- On the Mac that will host the hub: Settings › Fleet › Host the hub on this Mac, then New pairing code.
- On each other Mac: Settings › Fleet, paste the code, Join. A code adds one Mac and works once, for 15 minutes.
A Mac that joins uploads its last 24 hours, then new history every ten seconds. If the hub cannot be reached it keeps recording and fills the gap later. The hub Mac has to stay on and logged in.
Macs on other networks. On the hub Mac, under "Connect Macs on other networks", paste an auth key from your own Tailscale account (reusable, tagged, pre-approved). UTM Watch then carries its own hidden Tailscale node: nothing appears in the menu bar or in System Settings, and a Tailscale you already run is left alone. Pairing codes made after that work from any network.
A hub on a server. The same hub runs on Linux:
AI diagnosis across the fleet. On a Mac that has joined, the MCP server offers list_macs, and every tool takes an optional mac (a name or UUID). Without mac a tool answers for the Mac it runs on, from its own database, exactly as before; that keeps working when the hub is down.
utmwatch fleet status, leave, view and sim are command-line equivalents and testing aids. The design is in docs/DESIGN-fleet.md.
Terminal tool
utmwatch lists every running virtual machine on this Mac by its UTM name with live CPU, memory and network usage, and tells you how much memory and how many cores are still allocatable.
Keys while running: 1 2 5 change the interval (takes effect immediately), s cycles the sort (name, CPU, memory, network), h hides/shows stopped VMs, u toggles MB/s and Mbps, r re-reads the VM list now, q quits.
How it works
UTM Watch reads each VM's process for CPU and memory, its vmenetN interface for network, and its disk image for disk usage, all read-only and without anything installed in the guest. It matches processes to VMs through the disk image each process holds open, and gets names and states from UTM's AppleScript interface. Only NAT ("Shared") networking is supported in this version; bridged VMs show no network.
docs/HOW-IT-WORKS.md explains what each number means, how VMs are identified, the permissions involved and the implementation details.
Build from source
Requires macOS 26 on Apple silicon and the Swift toolchain from Xcode or the Command Line Tools. The terminal tool and the app have no third-party dependencies and need no root.
Self-checks for the pure logic (Command Line Tools ship no XCTest, so this is a plain executable):
Scripts/make-app.sh builds and signs build/UTMWatch.app (with your Apple Development certificate if you have one, otherwise ad hoc); Scripts/make-release.sh produces the downloadable archives in dist/. Design notes are in docs/DESIGN-menu-bar-app.md.
To connect Claude Code to a build from source:
Contributing
Bug reports and pull requests are welcome. See CONTRIBUTING.md.
License
MIT. See LICENSE.
來源:README.md,提交 4962b56
工具
0版本歷史
1- v0.7.1最新Nov 12, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
其他 Watch 整合
watch.diy – DIY Store Finder
diy.watch官方發布者
遠端 MCP 伺服器,讓助理搜尋 DIY 與園藝商品,並依德國郵遞區號查詢各 DIY 零售商的價格與門市庫存。
Ned Watch
watch.ned官方發布者
Ned Watch 是遠端可用性與心跳監控服務,讓助理註冊監控、進行 deadman 簽到,並查看狀態與餘額。

WatchGuard Cloud
由 GitHub 帳號 WYRE-AI 發布
面向 WatchGuard Cloud 帳戶、啟用與操作員 API 的 MCP 伺服器,讓助理管理 MSP 子帳戶、裝置與授權啟用以及操作員使用者。

Watch Video
由 GitHub 帳號 marwanm7moud 發布
本機 MCP 伺服器,讓助理「觀看」本機檔案或網址影片,取得附時間戳的轉錄文字與場景挑選的關鍵影格,並可再取精確影格。

Earnings Watch
由 GitHub 帳號 benjamin-di 發布
本機 MCP 伺服器,讓助理取得經核驗的發行人財報行事曆、事件證據與官方業績文件連結,並維護個人追蹤清單。