A screenshot tool that raises the window it photographs cannot be used while you work; this one can, which is the difference between a party trick and something an agent can call repeatedly while you keep typing. The other decision worth making up front is where the analysis runs: leaving the provider list empty gives you capture with no analysis at all, a local Ollama model keeps the pixels on your machine, and a cloud entry sends your screen to a third party.
A macOS-only MCP server for screenshots and screen analysis. Captures go through Apple's ScreenCaptureKit, which means they happen without raising or focusing the target window — your workflow is not interrupted to take the picture.
- Screen capture with flexible targeting through one tool: the whole display, a named app, a window matched by title, the frontmost window, or a process by PID — `image`
- A `question` on the same call, so a capture and its analysis happen in one round trip rather than two
- Discovery for that targeting: list running applications, list one app's windows by name or PID, or check server status including whether the Swift CLI is present and screen-recording permission has been granted — `list`
- Analysis of an image already on disk, with a question and an optional provider and model override for that call — `analyze`
- Your choice of vision backend through `PEEPIT_AI_PROVIDERS`: a list of `provider/model` entries tried in order, mixing local Ollama models and cloud ones so a private capture never has to leave the machine
- Sane file handling rather than giant inline payloads: screen captures are always written to disk, multiple captures get distinguishing filenames instead of overwriting, and long names are trimmed to the macOS byte limit with non-Latin characters intact
- Browser helper filtering, so asking for a browser window returns the real window instead of a renderer helper process
macOS 14.0+ and Node.js 20.0+. Screen Recording permission for whichever app runs the server — your terminal, Claude Desktop, VS Code or Cursor — granted in System Settings and followed by a restart of that app; Accessibility permission is optional but makes window targeting more reliable. The package is `@mantisware/peepit-mcp` and the documented launch is `npx -y @mantisware/peepit-mcp`. AI analysis is off until `PEEPIT_AI_PROVIDERS` is set, and cloud providers need their own key — `OPENAI_API_KEY` for OpenAI. Local analysis needs Ollama running with a vision model pulled. Optional variables cover the log level and file, the default save path, the Ollama base URL, the CLI timeout and a custom CLI path.
One command — npx -y @mantisware/peepit-mcp
