Labsco
MCP SERVER

Lets a model see your Mac: capture the screen, an app or one window without stealing focus, then ask a vision model a question about the shot.

Browser Automation, Control & Screenshots
Summary
Captures without stealing focus, which is why it fits a loop.

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.

What it is

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.

What you get
  • 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
Requirements

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.

Setup effort

One command — npx -y @mantisware/peepit-mcp