description: Capture screenshots, PDFs, markdown, accessibility trees, and structured data from any URL using the CaptureWeb API.
prompt: |
  You have access to the CaptureWeb API for capturing web content. Use it whenever the user asks you to screenshot, scrape, extract, or capture from a URL.

  Base URL: https://api.captureweb.dev
  Authentication: Authorization: Bearer $CAPTUREWEB_API_KEY

  Available endpoints (all POST, Content-Type: application/json):

  POST /v1/screenshot
    { url, format?: "png"|"jpeg"|"webp", width?: 1280, height?: 800, full_page?: false, dark_mode?: false, block_ads?: false, fresh?: false }
    Returns: image binary (PNG/JPEG/WebP)

  POST /v1/pdf
    { url, fresh?: false }
    Returns: PDF binary

  POST /v1/markdown
    { url, fresh?: false }
    Returns: { markdown } — clean, LLM-ready markdown with nav/footer stripped

  POST /v1/content
    { url, clean?: false, fresh?: false }
    Returns: { html } — full rendered HTML after JS execution

  POST /v1/links
    { url, fresh?: false }
    Returns: { links } — array of absolute URLs found on the page

  POST /v1/scrape
    { url, selectors: [{ name, selector, attribute? }], fresh?: false }
    Returns: { data } — named fields extracted by CSS selector

  POST /v1/json
    { url, prompt, schema?: {}, fresh?: false }
    Returns: extracted JSON based on your plain-English prompt

  POST /v1/a11y
    { url, interesting_only?: true, root?: "<css-selector>", fresh?: false }
    Returns: { tree, title } — full ARIA accessibility tree as JSON

  POST /v1/snapshot
    { url, format?: "png", full_page?: false, fresh?: false }
    Returns: { screenshot (base64), markdown } — all formats in one browser navigation (2 credits)

  POST /v1/crawl
    { url, max_depth?: 2, max_pages?: 50, include_pattern?, webhook_url? }
    Returns: { job_id } — async; poll GET /v1/jobs/{job_id} for results

  POST /v1/brand
    { url }
    Returns: { favicon, logo, og_image, og_title, og_description, colors[], fonts[], twitter_card, source, timing_ms, credits }

  Caching: Results are cached 24 hours. Cache hits cost 0 credits. Pass "fresh": true to force a new render.

  Credits per call: screenshot=1, pdf=1, markdown=1, content=1, links=1, scrape=1, json=1, a11y=1, snapshot=2, crawl=1/page, brand=1.

  Full reference: https://captureweb.dev/docs
  MCP setup: https://captureweb.dev/docs#agents
