Uses Puppeteer to capture high-quality screenshots and screencasts of web pages with automatic tiling, configurable viewports, wait strategies, and JavaScript injection capabilities.
@just-every/mcp-screenshot-website-fast
Fast, efficient screenshot capture of web pages - optimized for CLI coding tools. Automatically tiles full pages into 1072x1072 chunks for optimal processing.
Overview
Built specifically for AI vision workflows, this tool captures high-quality screenshots with automatic resolution limiting and tiling for optimal processing by Claude Vision API and other AI models. It ensures screenshots are perfectly sized at 1072x1072 pixels (1.15 megapixels) for maximum compatibility.
Features
๐ธ Fast screenshot capture using Puppeteer headless browser
๐ฏ Claude Vision optimized with automatic resolution limiting (1072x1072 for optimal 1.15 megapixels)
๐ฒ Automatic tiling - Full pages are automatically split into 1072x1072 tiles
๐ฌ Screencast capture - Record series of screenshots over time with configurable intervals
๐ Always fresh content - No caching ensures up-to-date screenshots
๐ฑ Configurable viewports for responsive testing
โฑ๏ธ Wait strategies for dynamic content (networkidle, custom delays)
๐ Full page capture by default for complete page screenshots
๐ฅ Animated WebP export - Save screencasts as high-quality animated WebP files
๐ JavaScript injection - Execute custom JS before screencast capture
๐ฆ Minimal dependencies for fast npm installs
๐ MCP integration for seamless AI workflows
๐ Resource efficient - Automatic browser cleanup after 60 seconds of inactivity
๐งน Memory management - Pages are closed after each screenshot to prevent leaks
Installation
Claude Code
VS Code
Cursor
JetBrains IDEs
Settings โ Tools โ AI Assistant โ Model Context Protocol (MCP) โ Add
Choose "As JSON" and paste:
Raw JSON (works in any MCP client)
Drop this into your client's mcp.json (e.g. .vscode/mcp.json, ~/.cursor/mcp.json, or .mcp.json for Claude).
Prerequisites
Node.js 20.x or higher
npm or npx
Chrome/Chromium (automatically downloaded by Puppeteer)
Quick Start
MCP Server Usage
Once installed in your IDE, the following tools are available:
Available Tools
take_screenshot- Captures a high-quality screenshot of a webpageParameters:
url(required): The HTTP/HTTPS URL to capturewidth(optional): Viewport width in pixels (max 1072, default: 1072)height(optional): Viewport height in pixels (max 1072, default: 1072)fullPage(optional): Capture full page screenshot with tiling (default: true)waitUntil(optional): Wait until event: load, domcontentloaded, networkidle0, networkidle2 (default: domcontentloaded)waitFor(optional): Additional wait time in millisecondsdirectory(optional): Directory to save screenshots - returns file paths instead of base64 images
Usage Examples
Default usage (returns base64 images):
Save to directory (returns file paths):
When using the directory parameter:
Screenshots are saved as PNG files with timestamps
File paths are returned instead of base64 data
For tiled screenshots, each tile is saved as a separate file
Directory is created automatically if it doesn't exist
take_screencast
Captures a series of screenshots over time to create a screencast. Only captures the top tile (1072x1072) of the viewport.
Parameters
url(required): The URL to captureduration(optional): Total duration in seconds (default: 10)interval(optional): Interval between screenshots in seconds (default: 2)jsEvaluate(optional): JavaScript code to execute at the startwaitUntil(optional): Wait strategy: 'load', 'domcontentloaded', 'networkidle0', 'networkidle2'waitForMS(optional): Additional wait time before startingdirectory(optional): Save as animated WebP to directory (captures every 1 second)
Usage Examples
Basic screencast (5 frames over 10 seconds):
Custom timing:
With JavaScript execution:
Save as animated WebP:
When using the directory parameter:
An animated WebP is created with 1-second intervals
Individual frames are also saved as PNG files
The animation loops forever by default
WebP provides excellent quality:
Full color support (no 256 color limitation)
Efficient compression for web animations
Perfect for gradient backgrounds and smooth animations
Smaller file sizes compared to GIF with better quality
Development Usage
Install
Capture screenshot
CLI Options
-w, --width <pixels>- Viewport width (max 1072, default: 1072)-h, --height <pixels>- Viewport height (max 1072, default: 1072)--no-full-page- Disable full page capture and tiling--wait-until <event>- Wait until event: load, domcontentloaded, networkidle0, networkidle2--wait-for <ms>- Additional wait time in milliseconds-o, --output <path>- Output file path (required for tiled output)
Auto-Restart Feature
The MCP server includes automatic restart capability by default for improved reliability:
Automatically restarts the server if it crashes
Handles unhandled exceptions and promise rejections
Implements exponential backoff (max 10 attempts in 1 minute)
Logs all restart attempts for monitoring
Gracefully handles shutdown signals (SIGINT, SIGTERM)
For development/debugging without auto-restart:
Architecture
Development
Why This Tool?
Built specifically for AI vision workflows:
Optimized for Claude Vision API - Automatic resolution limiting to 1072x1072 pixels (1.15 megapixels)
Automatic tiling - Full pages split into perfect chunks for AI processing
Always fresh - No caching ensures you get the latest content
MCP native - First-class integration with AI development tools
Simple API - Clean, straightforward interface for capturing screenshots
Contributing
Contributions are welcome! Please:
Fork the repository
Create a feature branch
Add tests for new functionality
Submit a pull request
Troubleshooting
Puppeteer Issues
Ensure Chrome/Chromium can be downloaded
Check firewall settings
Try setting
PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=trueand provide custom executable
Screenshot Quality
Adjust viewport dimensions
Use appropriate wait strategies
Check if site requires authentication
Timeout Errors
Increase wait time with
--wait-forflagUse different
--wait-untilstrategiesCheck if site is accessible
License
MIT
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Captures high-quality screenshots and screencasts of web pages, automatically tiling full pages into 1072x1072 chunks optimized for Claude Vision API and other AI vision models.