npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

claude-vision

v1.2.0

Published

MCP server for screenshot capture in Claude Code - multi-monitor support, window capture, OCR, and more

Readme

ClaudeVision

An MCP (Model Context Protocol) server that enables Claude Code to take and analyze screenshots of your displays.

Features

  • Multi-monitor support - List and capture specific monitors
  • Window capture - Capture specific application windows by title
  • Region capture - Capture rectangular areas of the screen
  • Active window capture - Capture the currently focused window
  • OCR text extraction - Extract readable text from screenshots
  • Image processing - Resize and compress screenshots
  • Delay timer - Wait before capturing (for menus/tooltips)
  • Auto-cleanup - Delete old screenshots to save space

Installation

Option 1: NPM Global Install (Recommended)

npm install -g claude-vision

Then add to Claude Code:

claude mcp add --transport stdio --scope user claude-vision -- claude-vision

Option 2: NPX (No Install)

claude mcp add --transport stdio --scope user claude-vision -- npx claude-vision

Option 3: From Source

git clone https://github.com/meltingpixelsai/claude-vision.git
cd claude-vision
npm install
npm run build
claude mcp add --transport stdio --scope user claude-vision -- node /path/to/claude-vision/build/index.js

Usage

Once installed, Claude Code will have access to these tools:

list_monitors

List all connected monitors with resolution and position.

User: "List my monitors"
Claude: You have 2 monitors:
  - Monitor 0 (PRIMARY): 2560x1440 at (0, 0)
  - Monitor 1: 1920x1080 at (2560, 0)

screenshot

Capture a full monitor.

User: "Take a screenshot of my second monitor"
Claude: [captures monitor 1, saves to temp file]
        [reads the image and describes what it sees]

Parameters:

  • monitor - Monitor ID (0, 1) or name ("primary")
  • resize - Max dimension to resize to
  • quality - Compression quality 1-100
  • delay - Seconds to wait before capture

screenshot_window

Capture a specific application window.

User: "Screenshot VS Code"
Claude: [captures the VS Code window]

Parameters:

  • title - Window title to match (partial match)
  • resize - Max dimension to resize to
  • quality - Compression quality 1-100

screenshot_region

Capture a rectangular area.

User: "Screenshot the top-left 800x600 of my screen"
Claude: [captures region (0, 0, 800, 600)]

Parameters:

  • x, y - Top-left coordinates
  • width, height - Size in pixels
  • monitor - Which monitor's coordinate space

screenshot_active

Capture the currently focused window.

User: "Screenshot whatever I'm looking at"
Claude: [captures the active window]

Parameters:

  • resize - Max dimension to resize to
  • quality - Compression quality 1-100
  • delay - Seconds to wait (useful for menus)

extract_text

OCR - Extract text from a screenshot.

User: "What does that error message say?"
Claude: [runs OCR on the screenshot]
        The error says: "Connection refused on port 3000"

Parameters:

  • image_path - Path to screenshot file
  • language - Language code (default "eng")

cleanup

Delete screenshots when done.

User: "Clean up those screenshots"
Claude: Deleted 3 screenshots.

Parameters:

  • path - Specific file to delete
  • all - Delete all screenshots
  • older_than - Delete screenshots older than N minutes

Requirements

  • Node.js 18 or later
  • Windows, macOS, or Linux
  • Claude Code CLI

Privacy & Security

  • Screenshots are saved to your system's temp directory
  • No data is transmitted over the network
  • Screenshots can capture sensitive information - be aware of what's visible
  • Use the cleanup tool to delete screenshots when done

Troubleshooting

"No monitors detected"

  • Make sure you're not in a headless environment
  • On Linux, ensure X11 or Wayland is running

"Could not detect active window"

  • Make sure a window is focused
  • On some systems, additional permissions may be required

OCR not detecting text

  • Try a different language parameter
  • Ensure the text is large enough and clearly visible
  • Very stylized fonts may not be recognized

License

MIT License - see LICENSE file

Author

Jeremy Harvey (@jdiamond)