screenshot-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@screenshot-mcptake a screenshot of my primary monitor"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
screenshot-mcp
An MCP server that captures full-monitor screenshots and returns them inline (base64) or as a saved file. Supports macOS, native Linux (X11 and Wayland), native Windows, and WSL2.
Tools
list_monitors
Lists all connected monitors with their index, resolution, and primary status. Call this first to find monitor indices.
take_screenshot
Captures a screenshot of one monitor.
Argument | Type | Default | Description |
| integer |
| Monitor index from |
|
|
|
|
| string | temp file | Output path. Only used when |
Tip: Very high-res monitors (4K, 5K) produce large base64 blobs. If you hit context limits, switch to
return="path"and use theReadtool to view the file.
Related MCP server: GetScreen MCP Server
Installation
git clone https://github.com/you/screenshot-mcp
cd screenshot-mcp
npm install
npm run buildPlatform requirements
Platform | Requirement |
macOS | Nothing extra — uses |
Native Linux / X11 |
|
Native Linux / Wayland |
|
Native Windows | Nothing extra — uses PowerShell + |
WSL2 | Nothing extra — shells out to |
Configure in Claude Code
claude mcp add screenshot node /absolute/path/to/screenshot-mcp/dist/index.jsConfigure in Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"screenshot": {
"command": "node",
"args": ["/absolute/path/to/screenshot-mcp/dist/index.js"]
}
}
}How WSL2 works
WSL2 doesn't have direct access to the Windows display. This server detects WSL (via /proc/version or WSL_DISTRO_NAME) and shells out to powershell.exe to run a capture script using System.Windows.Forms.Screen and System.Drawing. The PNG is written to the Linux /tmp filesystem via the \\wsl.localhost\... UNC path and then read back.
This server cannot be deployed
Maintenance
Related MCP Connectors
- GrabbitOAuthlive.grabbit
Screenshot any URL as a hosted image. No local browser; handles bot walls and full-page captures.
Screenshot any URL to PNG/JPEG. Cookie banners and chat widgets removed by default.
Screenshot any URL/HTML as PNG/JPEG/WebP, or read it as clean Markdown/text for LLMs.
Pixel-perfect webpage screenshots rendered in a real browser, full-page or viewport, via one POST.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceCaptures screenshots and saves them to file paths specified by client applications, primarily designed to facilitate screenshot analysis by AI assistants running in WSL environments.1-
- AlicenseNot gradedqualityDmaintenanceEnables capturing screenshots of all connected monitors with automatic JPEG compression and multi-platform support including WSL environments. Supports quality adjustment and image resizing through simple natural language commands.3 npmISC
- AlicenseNot gradedqualityCmaintenanceEnterprise-grade screenshot capture server for AI agents with multi-format support, PII masking, multi-monitor support, and security controls for capturing full screens, specific windows, or custom regions across Linux, macOS, and Windows.49 npm2MIT
- AlicenseBqualityFmaintenanceEnables AI assistants running in WSL to capture Windows screenshots of full desktops, specific monitors, or individual windows by title or process name. It features DPI awareness, automatic path conversion between WSL and Windows, and customizable storage options.13MIT