listWindowsLABSCO SUMMARY
Screenshots with a whitelist in front of them.
The approval list is the whole design: an agent can only see the windows you ticked, so handing over visual context is not the same as handing over your screen. Capture is backgrounded, so the window being looked at does not have to be the one in front of you — though it does have to be un-minimised.
What it is
A macOS-only Python server that screenshots application windows an agent is allowed to capture, from a list you approve during setup. Capture happens in the background, without changing window focus.
What you get
- The approved windows listed, and only those
- A screenshot of a specific approved window by its ID
- Capture in the background — no focus change, no interruption to what you are doing
- Actual pixel data at full fidelity, not OCR or text extraction
- JPEG compression with a base64 payload cap - a Medium default, configurable and clamped between 100 and 900KB
- Server information and configuration exposed at
screeny://info - Everything run on your device, with screenshots deleted immediately after use
Requirements
macOS, plus two things granted once: Screen Capture permission, and a window approval step where you pick which windows are capturable. Minimised windows cannot be captured. Published to PyPI as mcp-server-screeny.
Setup effort
Follow the published steps — pipx install mcp-server-screeny
USE CASES
Showing an agent what your app actually renders
Capture the approved application window and get real pixels back rather than a description.
Debugging a UI without narrating it
Screenshot the window while you keep working in another one; focus does not change.
Keeping the rest of your screen private
Only pre-approved windows appear in the list at all, so nothing else is reachable.
Watching something change over a session
Take the same window repeatedly by ID as you make changes.
Keeping the payload small enough to send
Screenshots are JPEG-compressed to a cap you set between 100 and 900KB.
2 tools
Listed in project docs. Your client may show a different list.
takeScreenshotBEFORE YOU INSTALL
What to know first
Tools you get
2 tools named in the project's documentation.
Requires
- mcp-server-screeny on PATH
- Python 3.10+
Where it runs
All 4 documented setups run the server on your machine.
INSTALLATION
Connect your client
Server setup
pipx install mcp-server-screenyGrant Screen Capture permission to both your terminal app and your MCP host (Claude Desktop, Cursor): System Settings → Privacy & Security → Screen & System Audio Recording, add both with +, then restart both.
mcp-server-screeny --setupThat approves which windows can be captured; add --allow-all to approve every current window. If you use the uvx configuration, run uvx mcp-server-screeny --setup instead.
MCP Clients
Claude Desktop — pipx, Cursor — pipx
{
"mcpServers": {
"screeny": {
"command": "mcp-server-screeny",
"args": []
}
}
}Claude Desktop — uvx, Cursor — uvx
{
"mcpServers": {
"screeny": {
"command": "uvx",
"args": [
"mcp-server-screeny"
]
}
}
}