Skip to content
Eden Engine

Web Page HTML Scraper

omnial/web-scrape-html

Fetches a single URL and returns its rendered HTML along with page metadata (title, language, favicon, headings). Can strip chrome down to main content only, inline iframes, wait for animations to settle, and reuse a recent cached fetch instead of re-scraping.

activeper callv5

Price

Up to $0.00346 per call; you pay what the call used

You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.

Data source

The requested web page

Data from the web page you request.

Use it

Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.

Connect once and your AI can find and run this tool, and any other it needs.

agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/web-scrape-html" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/web-scrape-html" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/web-scrape-html", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/web-scrape-html", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.00346
Updated
Oct 25, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "description": "Full URL to fetch, including the http:// or https:// scheme."
    },
    "maxAgeMs": {
      "type": "integer",
      "default": 86400000,
      "maximum": 2592000000,
      "minimum": 0,
      "description": "Reuse a cached result younger than this many milliseconds. Default 86400000 (1 day), max 2592000000 (30 days). Set 0 to always fetch fresh."
    },
    "includeFrames": {
      "type": "boolean",
      "default": false,
      "description": "Render iframes inline into the returned HTML. Default false."
    },
    "settleAnimations": {
      "type": "boolean",
      "default": false,
      "description": "Wait briefly for CSS and transition animations to settle before the HTML is captured. Default false."
    },
    "useMainContentOnly": {
      "type": "boolean",
      "default": false,
      "description": "Keep only the page's main content, dropping headers, footers, sidebars, and navigation when detectable. Default false."
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "required": [
    "success",
    "html",
    "url",
    "metadata"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "description": "The URL that was actually scraped (echoes the request)."
    },
    "html": {
      "type": "string",
      "description": "The page's rendered HTML."
    },
    "type": {
      "type": "string",
      "description": "The result format, always \"html\" for this tool."
    },
    "success": {
      "type": "boolean",
      "description": "Whether the scrape completed successfully."
    },
    "metadata": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string"
        },
        "favicon": {
          "type": "string",
          "description": "The page's favicon, as a URL or a data: URI."
        },
        "finalUrl": {
          "type": "string",
          "description": "The URL after following any redirects."
        },
        "headings": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "level": {
                "type": "integer",
                "description": "Heading level, 1-6."
              }
            },
            "additionalProperties": true
          },
          "description": "Headings found on the page, in document order."
        },
        "language": {
          "type": "string"
        },
        "sourceUrl": {
          "type": "string",
          "description": "The URL originally requested."
        }
      },
      "description": "Page metadata extracted alongside the HTML.",
      "additionalProperties": true
    }
  },
  "description": "The scraped page, narrowed from the provider's whole `output` object.",
  "additionalProperties": true
}