DeepSyte

take_screenshot

Capture a screenshot of any URL and return a public image URL.

Parameters

ParameterTypeRequiredDefaultDescription
urlstringYes-The URL to screenshot
widthnumberNo1280Viewport width in pixels (320-3840)
heightnumberNo800Viewport height in pixels (240-2160)
fullPagebooleanNofalseCapture full scrollable page
formatstringNo"png"png, jpeg, or webp
delaynumberNo0Wait ms after page load (0-10000)
cookieConsentstringNo"auto"Dismiss common cookie consent overlays before capture. Use none to preserve banners exactly as shown.
waitForstringNo-CSS selector or selector group to wait for before capture. Timeout is best-effort.
waitUntilstringNo"networkidle"Navigation load state: networkidle, load, domcontentloaded, or none.
timeoutMsnumberNo10000Timeout for navigation, waitFor, and clickBefore.
preScreenshotJsstringNo-JavaScript to evaluate immediately before capture.
deviceScaleFactornumberNo1Browser DPR. Use 2 for retina mobile captures.
clickBeforestringNo-CSS selector to click before waitFor and capture.

Example

Take a screenshot of https://stripe.com at 1440x900

Response

Returns the captured URL, public Evidence screenshot URL, dimensions, elapsed time, and job ID. MCP clients that render Markdown may also show the preview image inline.

Notes

  • Screenshots are stored on Cloudflare R2 with global CDN delivery
  • The page is loaded with a real Chromium browser with stealth mode enabled
  • Cookie consent overlays are dismissed by default for cleaner product screenshots; pass cookieConsent: "none" for compliance screenshots that must show the first-load banner
  • For JS-heavy SPAs, pass waitFor with a selector group such as main, h1, .hero; if it times out, DeepSyte returns the best-effort capture
  • Use preScreenshotJs to remove chat widgets, dialogs, app banners, or other page chrome immediately before capture
  • Supports JavaScript-rendered pages (SPAs, React, etc.)

On this page