Solves the VSCode + WSL2 gap
When Claude runs in VSCode on Windows with WSL2, pasting images from the clipboard fails — the sandboxed environment can’t see the Windows clipboard. mcp-clip bridges it.
Solves the VSCode + WSL2 gap
When Claude runs in VSCode on Windows with WSL2, pasting images from the clipboard fails — the sandboxed environment can’t see the Windows clipboard. mcp-clip bridges it.
Lock-free concurrency
Atomic operations and CAS loops throughout, zero mutexes in hot paths. Race-condition free
under all loads, verified with go test -race.
Image + binary aware
Detects PNG, JPEG, GIF, WebP, and BMP. Content over 25KB is returned in numbered chunks, or
as a pointer to the mcp-clip://current resource, instead of blowing up the response.
read_clipboard returns the current clipboard content as
text, base64, a saved file, or whichever of those fits automatically — with chunking for large
payloads.
{ "mcpServers": { "clipboard": { "command": "mcp-clip", "args": [] } }}Always-current resource
The server exposes a mcp-clip://current resource that always reflects the latest clipboard
content, so a client can read it directly instead of calling read_clipboard again.
Smart cleanup
Temp files created for large or binary content are cleaned up on a TTL, configurable with
MCP_CLEANUP_TTL (default 1h).
WSL2
Bridges to the Windows clipboard through PowerShell — the reason this server exists. WSL2 setup →
Linux
Direct clipboard integration via golang.design/x/clipboard.
macOS & Windows
Native clipboard support on both.