web-screenshot
Installation
SKILL.md
Web Screenshot
Take reliable screenshots of web pages. This skill teaches a tool-selection cascade - pick the lightest tool that does the job, never install dependencies the environment did not ask for.
Tool Selection Cascade
Two cascades govern the skill: one for picking the capture tool, one for escalating around a bot wall. They are different decisions - do not mix them up.
Cascade A: Picking the capture tool (no bot wall in sight)
Before any capture, check what is already available in the environment and pick the lightest viable tool:
| # | Tool | Detect with | Best for | Limits |
|---|---|---|---|---|
| 1 | Browser MCP (e.g. mcp__*__browser_take_screenshot) |
Already loaded in this session - check the MCP tool list | Single ad-hoc shot, no install, full-page and element shots, navigation flows | Runs in docker with datacenter IP - bot walls block this; output path is inside the MCP container |
| 2 | shot-scraper (CLI) | which shot-scraper |
Repeated captures, batch YAML, scripted automation, CI jobs | Headless by default - some bot walls fire only on headless; requires pip install shot-scraper && shot-scraper install once |
| 3 | Playwright (Python or Node) | python -c "import playwright" 2>/dev/null |
Multi-step flows, headed mode with stealth, anti-bot escalation (see Cascade B Tier 1) | Library-level; more code per shot |
| 4 | Ask user before installing | None of the above present | Long-term tooling decisions | Never install silently |