---
summary: "macOS 26.1 compatibility fixes: JSON audio parsing, AXMinimizeButton, CGWindowList unwrap; strip CLI commands from error messages"
breaking: false
security: false
---

# 0.1.2 — 2026-05-25

## Fixed

- **`macos_control_audio` / `macos_control_volume`**: `SwitchAudioSource -f dict` flag is not supported in v1.2.2 — switched to `-f json` and parallelised the current-device lookups ([#1](https://github.com/cyanheads/macos-mcp-server/issues/1))
- **`macos_manage_windows` minimize**: `win.minimized` setter throws "Can't convert types" (-1700) on macOS 26.1 — replaced with an `AXMinimizeButton` click, which is equivalent and works on all supported versions ([#2](https://github.com/cyanheads/macos-mcp-server/issues/2))
- **`macos_take_screenshot` target=window**: `ObjC.deepUnwrap` is broken on macOS 26.1 — replaced with per-key `ObjC.castRefToObject` + `objectForKey` unwrap for `CGWindowList` entries; display-index errors now surface a clean `display_not_found` code with a recovery hint instead of a raw `screencapture` error ([#3](https://github.com/cyanheads/macos-mcp-server/issues/3))
- **`macos_manage_apps`, `macos_manage_finder`, `macos_manage_focus`**: raw CLI invocations (`Command failed: open -a …`) were leaking into error messages — these tools now map CLI failures to typed `McpError` codes with actionable recovery hints ([#4](https://github.com/cyanheads/macos-mcp-server/issues/4))
