ScrapeGraphAI tools for the Vercel AI SDK - Smart web scraping powered by AI.
npm install ai-sdk-scrapegraph-toolsImportant: You must set your ScrapeGraph API key as an environment variable before using this package:
export SGAI_APIKEY=your_api_key_hereOr create a .env file:
SGAI_APIKEY=your_api_key_hereYou can get your API key from ScrapeGraphAI Dashboard.
import { smartScraperTool } from "ai-sdk-scrapegraph-tools";
import { generateText } from "ai";
import { gateway } from "ai";
const result = await generateText({
model: gateway("openai/gpt-4o-mini"),
prompt: "Scrape information about ScrapeGraph AI from https://scrapegraphai.com/",
tools: {
smartScraperTool,
},
});
console.log(result.text);This package provides the following ScrapeGraph tools:
- smartScraperTool - Extract structured data from websites using AI
- scrapeTool - Get raw HTML content from webpages
- searchScraperTool - Search and extract information from multiple web sources
- markdownifyTool - Convert webpages to clean markdown format
- sitemapTool - Extract all URLs from a website's sitemap
- localScraperTool - Extract structured data from local HTML content
- crawlTool - Start crawl jobs to extract data from multiple pages
- getCrawlRequestTool - Check the status of crawl jobs
- agenticScraperTool - Perform automated actions on webpages
- getCreditsTool - Check your API credits balance
- healthzTool - Check the health status of the ScrapeGraph API
- sendFeedbackTool - Submit feedback for requests
- generateSchemaTool - Generate JSON schemas from natural language prompts
- toonifyTool - Convert images to cartoon style
See the full documentation for more details.
- Clone the repository
- Install dependencies:
pnpm install- Create a
.envfile:
SGAI_APIKEY=your_scrapegraph_api_key_here- Add your ScrapeGraph API key to
.env. You can get your API key from ScrapeGraphAI Dashboard.
Note: You also need to configure your Vercel AI Gateway credentials if you're using the gateway model provider.
Test your tool locally:
pnpm testBuild the package:
pnpm buildBefore publishing, update the package name in package.json to your desired package name.
The package automatically builds before publishing:
pnpm publish.
├── src/
│ ├── index.ts # Your tool exports
│ └── test.ts # Test script
├── dist/ # Build output (generated)
├── package.json
├── tsconfig.json
└── README.md
MIT