GetScreen MCP Server
A lightweight Model Context Protocol (MCP) Server for rapid capture of screenshots from all available monitors with automatic compression.
Features
Multi-Monitor Support: Automatically captures all connected displays
WSL Support: Works seamlessly in Windows WSL through PowerShell integration
Fast Compression: Utilizes Sharp for optimal JPEG compression
Simple Integration: Single tool with optional parameters
Lightweight: Minimal dependencies, maximum performance
Cross-Platform: Linux, macOS, and Windows (including WSL)
New Features
Enhanced WSL Support
WSL support has been improved with automatic detection and PowerShell integration. The tool now works seamlessly whether you use the wsl command approach or the simpler Node-based direct execution method.
Key Features:
Automatic WSL detection via
/proc/versionenvironment inspectionSeamless PowerShell integration for capturing Windows host displays
Support for both direct Node execution and WSL command wrapper
No additional configuration needed for WSL environment detection
How It Works: When running in WSL, the tool automatically detects the environment and leverages PowerShell on the Windows host to capture screenshots. This approach ensures access to all display information from the Windows side while maintaining full compatibility with WSL-based tools.
Installation
Configuration
Claude Code
Add the following to your Claude configuration:
macOS:
~/Users/USERNAME/.claude.json
Windows:
C:\Users\USERNAME\.claude.json
Linux/WSL:
~/home/USERNAME/.claude.json
Usage
Screenshot Tool
The screenshot tool captures all available monitors and returns the compressed images.
Parameters (all optional):
quality(number, 1-100): JPEG quality. Default: 80maxWidth(number): Maximum width in pixels. Images are resized proportionally.
Examples:
Technical Details
Platform Detection
The tool automatically detects the environment and selects the optimal method:
WSL: Uses PowerShell on the Windows host via
powershell.exeLinux/macOS: Uses
screenshot-desktopfor native capture
Components
WSL Capture: PowerShell System.Windows.Forms and System.Drawing
Native Capture:
screenshot-desktopfor Linux/macOSCompression:
sharpfor fast image processing and JPEG compressionFormat: Images are returned as base64-encoded JPEGs
Performance: Parallel capture of all monitors for maximum speed
WSL Implementation
In WSL environments:
Detection via
/proc/version(checks for "microsoft" or "WSL")PowerShell script is executed on Windows host
All monitors are captured via
System.Windows.Forms.Screen::AllScreensScreenshots captured as PNG, then compressed to JPEG with desired quality
Base64-encoded transmission back to WSL
License
MIT