Skip to content

SwiftShot v1.1.0 — Native macOS screenshot tool with MCP server

Choose a tag to compare

@luongndcoder luongndcoder released this 20 Oct 00:11
· 16 commits to main since this release

🎉 SwiftShot v1.1.0

The lightweight native macOS screenshot tool — now with an MCP server so AI coding agents can see your screen.

🤖 New: MCP Server for AI coding agents

SwiftShot ships a Model Context Protocol server. Claude Code, Cursor, Continue, Zed and every other MCP client can now take screenshots of your Mac and read the pixels directly.

AI agent  --stdio/JSON-RPC-->  swiftshot-mcp  --unix socket-->  SwiftShot.app
                                                                    │
                                                          owns the Screen Recording
                                                                permission

The MCP server never touches the screen itself — it asks the running SwiftShot app over a unix socket. The app already holds the Screen Recording permission, so the agent needs no second TCC grant.

Tools: swiftshot_capture · swiftshot_displays · swiftshot_status · swiftshot_settings · swiftshot_open_settings

# 1. install the app
./install.sh
# 2. build + install the MCP server
./install-mcp.sh
# 3. register it with your agent
claude mcp add swiftshot -- ~/.local/bin/swiftshot-mcp
# 4. the app has to run (it owns the permission)
open -a SwiftShot

Verify the whole chain with the end-to-end suite:

python3 Tests/e2e_mcp.py

🎨 Flameshot parity

  • Move Selection tool with a real hand cursor (🖐 hover → ✊ drag) and directional resize cursors on the eight handles
  • Pro drawing modifiers: Ctrl snaps lines to 45°, Ctrl locks the aspect ratio, Shift resizes the opposite handle, Ctrl+Shift+arrows resizes symmetrically, Delete removes the selected annotation
  • New tools: Invert Colors (I), a full colour picker, an eyedropper (G) and user colour presets
  • Flexible saving: PNG or JPEG with adjustable quality, Save As… (⇧⌘S), optional "copy file path"
  • Capture options: reuse the last region, copy on double click, configurable dim opacity, optional pixel magnifier

🐛 Fixed

  • Blur rendered a black rectangle (the source rect pointed outside of the image)
  • The magnifier showed red and blue swapped (ScreenCaptureKit delivers BGRA)
  • The Save button never wrote a file and Copy copied twice
  • One hotkey press spawned two overlays (the hotkey was bound twice)
  • The toolbar could be placed off-screen for a full-screen selection
  • NSColor.redComponent crashed the app for dynamic colours
  • The local key monitor swallowed every key event of the whole application

📖 Full changelog and setup instructions