The side-render flags stack, so a single render can produce every artefact a page audit needs; download then takes the render URLs from a response that has not already been downloaded and writes them locally, accepting htmlUrl, markdownUrl, metadataUrl and mhtmlUrl alongside renderUrl. Setting store_renders is what makes that second step possible. The cost of the design is the length of render's option list, and the ones to set first are the failure conditions — fail_if_selector_missing and fail_on_4xx turn a blank screenshot into an error you can act on.
An Urlbox client with two tools: render, which posts a job to Urlbox's rendering API and can emit multiple output formats at once, and download, which saves the resulting files to your own file system.
- render produces the main screenshot plus side renders in one request: save_html, save_markdown, save_metadata, save_mhtml and save_cookies each add an output, and format sets the primary one.
- Page preparation before the shot: block_ads, block_images, block_scripts, block_fonts, block_xhr, block_urls, hide_cookie_banners, hide_selector, press_escape and click_accept.
- Waiting and scrolling controls that decide what is actually on the page when it fires: wait_for, wait_until, wait_timeout, wait_to_leave, delay, scroll_to, scroll_delay, scroll_increment, skip_scroll, full_page, full_page_mode and detect_full_height.
- Failure conditions you declare rather than detect afterwards: fail_on_4xx, fail_on_5xx, fail_if_selector_missing and fail_if_selector_present.
- PDF output with its own set: pdf_page_size, pdf_orientation, pdf_margin and its four per-side variants, pdf_header, pdf_footer, pdf_page_range, pdf_scale, pdf_background, pdf_outline, pdf_tagged and pdf_auto_crop.
- Rendering context: platform, pov, pov_country, proxy, latitude, longitude, tz, accept_lang, user_agent, media, dark_mode, reduced_motion, retina and gpu.
- Custom content instead of a live page through html, css and js, with highlight, highlightbg and highlightfg for marking up what the shot should emphasise.
- S3 delivery through use_s3, s3_bucket, s3_region, s3_path, s3_endpoint and s3_storageclass, and store_renders to keep outputs around for download to fetch.
An Urlbox account and its secret, supplied as SECRET_KEY.
One command plus a key — npx -y @urlbox/screenshot-mcp, then supply credentials
