Advanced screenshot capture and clipboard reading MCP server for Windows applications from WSL environments
Two tools with complete input schemas and descriptions. take_screenshot has comprehensive parameter documentation (8 params, all typed and described); read_clipboard is simpler (1 param). Both descriptions are adequate (100+ chars). However, output schemas are not documented, LLMs cannot infer what fields to expect in responses. No error handling guidance, no recovery hints. Parameter descriptions lack format constraints (e.g., 'quality' should specify JPEG-only context). Missing idempotency and side-effect declarations. Naming is clear (verb_noun pattern), but descriptions could be more LLM-optimized per pattern:tool-description baseline (target 50-200 chars; these are 100-150, acceptable but could be tighter).
Read the current Windows clipboard content (text or image)
WSLSnapIt: Smart screenshot capture for WSL. Capture monitors, windows by title/process, with direct image return and auto-compression.
Output schemas not documented. LLMs cannot infer response structure (fields, types, nested objects). take_screenshot returns base64 image data; read_clipboard returns text or image, neither is formally specified.
No error handling guidance. If screenshot capture fails (e.g., invalid window title, permission denied), the tool returns a raw error. LLMs receive no recovery hints (e.g., 'Try listing available windows first').
Parameter 'quality' (1-100) lacks context. Description says 'JPEG quality' but tool returns PNG base64 when returnDirect=true. Constraint mismatch confuses LLMs about when quality applies.
take_screenshot has side effects (saves to disk if returnDirect=false) but description does not declare this. LLMs cannot determine if the tool is safe to retry or if it has irreversible consequences.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Parameter 'folder' accepts both WSL and Windows paths but description does not explain the conversion logic or expected format. LLMs may pass invalid paths.