Documentation Index
Fetch the complete documentation index at: https://docs.scrapegraphai.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Agno ships a first-partyScrapeGraphTools toolkit at agno.tools.scrapegraph. One import, pass it to Agent(tools=[...]), and every ScrapeGraph endpoint is available to the model β no wrappers required.
Agno docs
Official Agno documentation
ScrapeGraphTools source
The toolkit on GitHub
Installation
Until the next Agno release ships the ScrapeGraph v2 rewrite, install Agno from
main (as shown above). Agno is model-agnostic β swap OpenAIChat for Claude, Gemini, or any other supported model.Quickstart
Enable every tool withall=True and let the model pick the right one per turn:
Tools exposed
| Tool | Signature | ScrapeGraph endpoint |
|---|---|---|
smartscraper | (url, prompt) -> str | POST /extract |
markdownify | (url) -> str | POST /scrape (markdown format) |
searchscraper | (query) -> str | POST /search |
crawl | (url, prompt, schema, max_depth=2, max_pages=2) -> str | POST /crawl (polls until complete) |
scrape | (url) -> str | POST /scrape (HTML format) |
markdownify), which is what Agno hands back to the model.
Configuration
All knobs live onScrapeGraphTools.__init__:
| Argument | Default | Purpose |
|---|---|---|
api_key | $SGAI_API_KEY | Your ScrapeGraph API key |
enable_smartscraper | True | Register smartscraper |
enable_markdownify | False | Register markdownify |
enable_searchscraper | False | Register searchscraper |
enable_crawl | False | Register crawl |
enable_scrape | False | Register scrape |
all | False | Shortcut: enable every tool |
render_heavy_js | False | Request JavaScript rendering on every call |
headers | None | Custom HTTP headers (User-Agent, Cookie, Authorization, β¦) applied to every fetch |
crawl_poll_interval | 3 | Seconds between crawl status polls |
crawl_max_wait | 180 | Max seconds to wait for a crawl to complete |
Examples
Structured extraction with smartscraper
Markdown conversion with markdownify
Multi-page extraction with crawl
crawl requires a JSON schema so every page contributes to the same shape. The toolkit polls until completion (bounded by crawl_max_wait).
Support
Python SDK
Source and issues for scrapegraph-py
Discord
Get help from our community
