mcpField
C
ClipGrab

ClipGrab

Local
github.com/ulebuleFiles & Storage0Updated 18w ago

About ClipGrab

ClipGrab is an MCP server that saves the image on the system clipboard as a PNG or JPG file. It is for AI agents and MCP clients that can open image files but cannot access the clipboard directly.

Key features

  1. 01Save clipboard images as PNG or JPG
  2. 02Return the saved image's absolute path
  3. 03Check whether the clipboard has an image
  4. 04Choose output directory and filename

Use cases

  1. 01Make a copied screenshot available to an agent
  2. 02Save clipboard images to a chosen folder
  3. 03Check for an image before saving

MCP support

ClipGrab exposes tools to check for a clipboard image and save it to a file, returning the file path for MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"ulebule-clipgrab": {
"command": "uvx",
"args": [
"clipgrab-mcp"
]
}
}
}
Run commanduvx clipgrab-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypiclipgrab-mcp0.1.0

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project 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

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.