Skip to main content
Glama

rudycanshoot

An MCP server + CLI that lets AI assistants take and view screenshots. Works with Claude Code, Cursor, Windsurf, Codex CLI, Gemini CLI, OpenCode, Continue, Cline, Aider, and GitHub Copilot.

Install

npm install -g rudycanshoot

Or run without installing:

npx -y rudycanshoot serve

Related MCP server: webdev-mcp

Quick Start

1. Auto-configure your AI tools

# All tools at once
rudycanshoot install --all

# Or a specific tool
rudycanshoot install --tool claude-code
rudycanshoot install --tool cursor
rudycanshoot install --tool windsurf
rudycanshoot install --tool codex
rudycanshoot install --tool gemini
rudycanshoot install --tool opencode
rudycanshoot install --tool continue
rudycanshoot install --tool cline

2. Restart your AI tool

The MCP server will now appear in your AI assistant's tool list.

3. Use it

Ask your AI: "Take a screenshot and show me what's on screen."


MCP Tools

Tool

Description

take_screenshot

Capture fullscreen, active window, or a region

read_screenshot

Read a saved image so the AI can view it

list_screenshots

List recent captures

record_video

Record a temporary screen video; returns frames the AI can watch

record_terminal

Record a TERMINAL SESSION (a running command) as a GIF — no desktop, works headless

read_video

Extract frames from a saved video for visual review

list_videos

List recent recordings

cleanup_videos

Delete temporary (or all) recordings

take_screenshot parameters

Parameter

Type

Default

Description

mode

fullscreen|window|area

fullscreen

What to capture

area

string

x,y,width,height — required when mode=area

filename

string

auto

Output filename

outputDir

string

~/.rudycanshoot/captures/

Where to save


CLI

# Take a screenshot
rudycanshoot capture
rudycanshoot capture --mode window
rudycanshoot capture --mode area --area 0,0,1920,1080
rudycanshoot capture --output /tmp/snap.png

# List recent screenshots
rudycanshoot list

# Record a temporary screen video (AI can read frames via MCP)
rudycanshoot record --duration 5 --fps 4
rudycanshoot videos
rudycanshoot cleanup-videos

# Start MCP server (used by AI tools — usually run automatically)
rudycanshoot serve

# Configure AI tools
rudycanshoot install --all

Supported AI Tools

Tool

Config location

What's installed

Claude Code

~/.claude/settings.json

MCP server entry + /screenshot command

Cursor

~/.cursor/mcp.json

MCP server entry

Windsurf

~/.codeium/windsurf/mcp_config.json

MCP server entry

Codex CLI

~/AGENTS.md

Tool documentation

Gemini CLI

~/.gemini/settings.json

MCP server entry

OpenCode

~/.config/opencode/opencode.json

MCP server + agent

Continue

~/.continue/config.json

MCP server entry

Cline

~/.clinerules/

Rules file

Aider

~/.aider.conf.yml

Comment reference

GitHub Copilot

~/.github/copilot-instructions.md

Instructions


Screenshot Backends

Linux

Unlike macOS/Windows, Linux has no single built-in screencapture binary. rudycanshoot uses silent backends only (no permission popups — xdg-desktop-portal is intentionally skipped).

Tried in order when available:

Tool

Display

Notes

grim

Wayland

sudo apt install grim

gnome-screenshot

Wayland

only non-interactive -f

scrot / maim / import

X11

optional packages

xwd + ffmpeg

X11

X11 built-in dump → PNG (no ImageMagick needed)

ffmpeg x11grab

X11

same encoder already used for video

WSL → PowerShell

Windows host desktop when Linux tools are missing

Video (Linux)

Same rule: silent only (no portal ScreenCast prompts).

Backend

When

ffmpeg x11grab

DISPLAY available (X11 / XWayland)

wf-recorder

Wayland, if installed

screenshot frames → MP4/GIF

fallback using the silent screenshot chain

macOS/Windows video uses ffmpeg avfoundation / gdigrab.

macOS

Uses the built-in screencapture command — no extra install needed.

Windows

Uses PowerShell + System.Windows.Forms — no extra install needed.


Project Config Files (for contributors)

When you clone this repo, your AI tool will auto-discover:

File

Tool

CLAUDE.md

Claude Code

AGENTS.md

Codex CLI, OpenCode

GEMINI.md

Gemini CLI

.github/copilot-instructions.md

GitHub Copilot

.cursor/mcp.json

Cursor

.mcp.json

Claude Code (project-level)

.windsurfrules

Windsurf

.clinerules/

Cline

.claude/commands/screenshot.md

Claude Code /screenshot command

.opencode/agents/screenshot.md

OpenCode agent


License

MIT


Image Processing

Function

Description

annotateImage

Add text label to a screenshot

diffScreenshots

Highlight/heatmap/side-by-side diff

compareScreenshots

Pixel-level similarity metrics

highlightRegions

Color overlays with labels

redactRegions

Fill or blur sensitive areas

addWatermark

Corner text watermark

addBorder

Solid border with optional radius

cropImage

Crop to a region

resizeImage

Resize preserving aspect ratio

stitchImages

Horizontal or vertical concat

makeGrid

N×M grid composite

makeGif

Animated GIF from PNG frames

ocrImage

Extract text via Tesseract

Pipeline API

import { Pipeline } from "rudycanshoot";

const path = await Pipeline.capture({ mode: "fullscreen" })
  .annotate("CT-6101 Boson capture", { position: "bottom" })
  .redact([{ x: 0, y: 0, w: 1920, h: 30 }], { style: "blur" })
  .watermark("CONFIDENTIAL", { corner: "br" })
  .save("/tmp/final.png");

Related MCP Connectors

Related MCP Servers