mcp-screenshot-website-fast

Quickly screenshots webpages and converts to an LLM friendly size

108
Stars
11
Forks
TypeScript
Language
8/24/2026
Added
View on GitHubDownload ZIP

⚠️ Third-Party Software Notice

This skill is third-party open-source software developed and hosted independently on GitHub. SkillTip is an informational directory and does not control or maintain the underlying repository. Any security checks displayed are automated and limited in scope. Review the source code before installing.

Read the Terms of Service

Installation

Add to your Claude Code skills directory:

# Add to your Claude Code skills
git clone https://github.com/just-every/mcp-screenshot-website-fast

Getting Started

Guides for using skills like mcp-screenshot-website-fast.

Security Report

Verified

Last scanned: —

{
  "status": "PASSED",
  "issues": []
}

README.md

@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.

Screenshot Website Fast MCP server

npm version GitHub Actions

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
  • 🪟 Windows-compatible launcher for npm-installed MCP usage
  • 🔋 Resource efficient - Automatic browser cleanup after 60 seconds of inactivity
  • 🧹 Memory management - Pages are closed after each screenshot to prevent leaks

Installation

Claude Code

claude mcp add screenshot-website-fast -s user -- npx -y @just-every/mcp-screenshot-website-fast

VS Code

code --add-mcp '{"name":"screenshot-website-fast","command":"npx","args":["-y","@just-every/mcp-screenshot-website-fast"]}'

Cursor

cursor://anysphere.cursor-deeplink/mcp/install?name=screenshot-website-fast&config=eyJzY3JlZW5zaG90LXdlYnNpdGUtZmFzdCI6eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqdXN0LWV2ZXJ5L21jcC1zY3JlZW5zaG90LXdlYnNpdGUtZmFzdCJdfX0=

JetBrains IDEs

Settings → Tools → AI Assistant → Model Context Protocol (MCP) → Add

Choose "As JSON" and paste:

{"command":"npx","args":["-y","@just-every/mcp-screenshot-website-fast"]}

Raw JSON (works in any MCP client)

{
  "mcpServers": {
    "screenshot-website-fast": {
      "command": "npx",
      "args": ["-y", "@just-every/mcp-screenshot-website-fast"]
    }
  }
}

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 webpage

    • Parameters:
      • url (required): The HTTP/HTTPS URL to capture
      • width (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 milliseconds
      • directory (optional): Directory to save screenshots - returns file paths instead of base64 images
  • capture_selector - Captures a screenshot of a specific DOM element matched by a CSS selector

    • Parameters:
      • url (required): The HTTP/HTTPS URL to capture
      • selector (required): CSS selector for the element to capture
      • width (optional): Viewport width in pixels (max 1072, default: 1072)
      • height (optional): Viewport height in pixels (max 1072, default: 1072)
      • waitUntil (optional): Wait until event: load, domcontentloaded, networkidle0, networkidle2 (default: domcontentloaded)
      • waitForMS (optional): Additional wait time in milliseconds
      • selectorTimeoutMS (optional): How long to wait for the selector to appear before failing (default: 5000)

Usage Examples

Default usage (returns base64 images):

take_screenshot(url="https://example.com")

Save to directory (returns file paths):

take_screenshot(url="https://example.com", directory="/path/to/screenshots")

Capture a specific element:

capture_selector(url="https://example.com", selector="#main")

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 capture
  • duration (optional): Total duration in seconds (default: 10)
  • interval (optional): Interval between screenshots in seconds (default: 2)
  • jsEvaluate (optional): JavaScript code to execute at the start
  • waitUntil (optional): Wait strategy: 'load', 'domcontentloaded', 'networkidle0', 'networkidle2'
  • waitForMS (optional): Additional wait time before starting
  • directory (optional): Save as animated WebP to directory (captures every 1 second)

Usage Examples

Basic screencast (5 frames over 10 seconds):

take_screencast(url="https://example.com")

Custom timing:

take_screencast(url="https://example.com", duration=15, interval=3)

With JavaScript execution:

take_screencast(
  url="https://example.com",
  jsEvaluate="document.body.style.backgroundColor = 'red';"
)

Save as animated WebP:

take_screencast(url="https://example.com", directory="/path/to/output")

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

npm install
npm run build

Capture screenshot

# Full page with automatic tiling (default)
npm run dev capture https://example.com -o screenshot.png

# Viewport-only screenshot  
npm run dev capture https://example.com --no-full-page -o screenshot.png

# Wait for specific conditions
npm run dev capture https://example.com --wait-until networkidle0 --wait-for 2000 -o screenshot.png

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:

# Run directly without restart wrapper
npm run serve:dev

Architecture

mcp-screenshot-website-fast/
├── src/
│   ├── internal/       # Core screenshot capture logic
│   ├── utils/          # Logger and utilities
│   ├── index.ts        # CLI entry point
│   ├── serve.ts        # MCP server entry point
│   └── serve-restart.ts # Auto-restart wrapper

Development

# Run in development mode
npm run dev capture https://example.com -o screenshot.png

# Build for production
npm run build

# Run tests
npm test

# Type checking
npm run typecheck

# Linting
npm run lint

Why This Tool?

Built specifically for AI vision workflows:

  1. Optimized for Claude Vision API - Automatic resolution limiting to 1072x1072 pixels (1.15 megapixels)
  2. Automatic tiling - Full pages split into perfect chunks for AI processing
  3. Always fresh - No caching ensures you get the latest content
  4. MCP native - First-class integration with AI development tools
  5. Simple API - Clean, straightforward interface for capturing screenshots

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Add tests for new functionality
  4. Submit a pull request

Troubleshooting

Puppeteer Issues

  • Ensure Chrome/Chromium can be downloaded
  • Check firewall settings
  • Try setting PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true and provide custom executable

Screenshot Quality

  • Adjust viewport dimensions
  • Use appropriate wait strategies
  • Check if site requires authentication

Timeout Errors

  • Increase wait time with --wait-for flag
  • Use different --wait-until strategies
  • Check if site is accessible

License

MIT

Frequently Asked Questions

What is mcp-screenshot-website-fast?

mcp-screenshot-website-fast is an open-source mcp servers skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by just-every. Quickly screenshots webpages and converts to an LLM friendly size. It has 108 GitHub stars.

Is mcp-screenshot-website-fast safe to use?

mcp-screenshot-website-fast returned warnings in SkillsLLM's automated security scan. It has no critical vulnerabilities, but review the flagged issues in the Security Report section before adding it to your workflow.

How do I install mcp-screenshot-website-fast?

Clone the repository with "git clone https://github.com/just-every/mcp-screenshot-website-fast" and add it to your Claude Code skills directory (see the Installation section above).

What programming language is mcp-screenshot-website-fast written in?

mcp-screenshot-website-fast is primarily written in TypeScript. It is open-source under just-every on GitHub, so you can review or fork the full source.

Are there alternatives to mcp-screenshot-website-fast?

Yes. SkillsLLM lists many other MCP Servers skills you can browse and compare side by side. Open the MCP Servers category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh mcp-screenshot-website-fast against similar tools.

Comments (0)

No comments yet. Be the first to share your thoughts!

n8n

by n8n-io

12

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

201,88160,308TypeScript
MCP Serversapisai-tools
View details

Scrapling

by D4Vinci

🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!

75,9137,581Python
MCP Servers
View details

TrendRadar

by sansan0

⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。

61,65224,883Python
MCP Servers
View details

context7

by upstash

Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

61,0602,938TypeScript
MCP Servers
View details

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

39,9393,219C
MCP Servers
View details

Developers Also Liked

Based on votes and bookmarks from developers who liked this skill

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI Agentsai-agentsanthropicclaude-code
View details
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI Agentsai-agentsbrainstorming
View details

n8n

by n8n-io

12

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

201,88160,308TypeScript
MCP Serversapisai-tools
View details

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI Agentsai-agentsanthropicclaude-code
View details

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI Agentsclaude-codeai-tools
View details