Back to Browse

ClipGrab MCP Server

by Ulebule
Developer ToolsModerate5.2MCP RegistryLocal
Free

Server data from the Official MCP Registry

Save the system clipboard image to a PNG or JPG file for AI agents.

About

Save the system clipboard image to a PNG or JPG file for AI agents.

Security Report

5.2
Moderate5.2Moderate Risk

ClipGrab is a well-designed MCP server with no critical security vulnerabilities. Authentication is not applicable (clipboard access is inherently local). The code properly handles file operations, uses safe subprocess calls with timeouts, and validates input parameters. Permissions are tightly scoped to clipboard reading and local file I/O, matching the server's stated purpose. Minor code quality observations exist but do not impact security posture. Supply chain analysis found 2 known vulnerabilities in dependencies (1 critical, 1 high severity). Package verification found 1 issue.

5 files analyzed · 6 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

clipboard

Check that this permission is expected for this type of plugin.

File System Write

Writes or modifies files on your machine. Check that this is expected for the tool.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

process_spawn

Check that this permission is expected for this type of plugin.

env_vars

Check that this permission is expected for this type of plugin.

system_info

Check that this permission is expected for this type of plugin.

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-ulebule-clipgrab": {
      "args": [
        "-y",
        "clipgrab"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

ClipGrab

mcp-name: io.github.ulebule/clipgrab

An MCP server that saves the image currently on the system clipboard to a file (PNG or JPG).

Why

Many AI agents can read image files but cannot access the system clipboard. ClipGrab bridges that gap: copy an image (e.g. a screenshot), call the tool, and get back a path to a saved image on disk that the agent can open.

By default the image is saved to the current working directory — the folder the agent runs from.

Requirements

  • Python 3.10+
  • Python packages (see requirements.txt): Pillow, mcp[cli]
  • Linux only: wl-clipboard (wl-paste) or xclip for the clipboard fallback.

Install from PyPI

Run directly with uv (no install step):

uvx clipgrab-mcp

Or install with pip:

pip install clipgrab-mcp
clipgrab-mcp

Setup from source

python3 -m venv .venv
./.venv/bin/pip install -r requirements.txt

Tools

  • save_clipboard_image(directory?, filename?, image_format?) → saves the clipboard image and returns the absolute path.
    • directory — defaults to the current working directory (created if missing). Can also be set via the CLIPGRAB_DEFAULT_DIR environment variable.
    • filename — defaults to a timestamped name (clipboard-YYYYMMDD-HHMMSS).
    • image_format"png" (default) or "jpg".
  • clipboard_has_image() → returns true/false.

Run manually (stdio)

./.venv/bin/python mcp_server.py

Install as a VS Code extension

ClipGrab ships as a VS Code extension that registers the MCP server automatically — it then appears under Extensions view → MCP Servers and starts on demand. On first use the extension creates its own Python virtual environment and installs the dependencies, so you only need Python 3.10+ on your PATH (configurable via the clipgrab.pythonPath setting).

Develop / try it:

  1. Open this folder in VS Code and press F5 to launch the Extension Development Host.
  2. In that window, open Chat (agent mode); the ClipGrab MCP server and its save_clipboard_image tool are available.

Package a .vsix for sharing:

npm install -g @vscode/vsce
vsce package

VS Code configuration (without the extension)

A ready-to-use config lives in .vscode/mcp.json:

{
  "servers": {
    "clipgrab": {
      "command": "/absolute/path/to/.venv/bin/python",
      "args": ["/absolute/path/to/mcp_server.py"],
      "cwd": "${workspaceFolder}"
    }
  }
}

Then open .vscode/mcp.json and start the clipgrab server (or use the Command Palette → "MCP: List Servers").

Use with an MCP client

Point any MCP client at the published PyPI package over stdio:

{
  "servers": {
    "clipgrab": {
      "command": "uvx",
      "args": ["clipgrab-mcp"]
    }
  }
}

ClipGrab is described for registries by server.json and is published to the official MCP registry under the name io.github.ulebule/clipgrab.

Technical notes

  • Cross-platform image grab: Pillow ImageGrab.grabclipboard() (Windows / macOS, and Linux with a recent Pillow). On Linux it falls back to wl-paste / xclip.

License

MIT

Reviews

No reviews yet

Be the first to review this server!