Agent skills for web scraping,
and the scraper stays yours
Your agent reads one file when the prompt calls for it, then writes the request in the stack your project already uses. No page is piped through the context window, and the file still runs after the conversation ends.
1,000 free credits. No credit card required.


Install it once. The agent reaches for it on its own.
Claude Code takes it as a plugin, editors read it from a folder, and anything that understands the format takes the npx line. The key is the only shared step.
Web scraping tasks your agent turns into code.
What reaches the model is a handful of named fields, not a page of HTML, so the context stays small and the code stays short.
Prompt
What the skill settles
Prompt
What the skill settles
Prompt
What the skill settles
Prompt
What the skill settles
Prompt
What the skill settles
Nothing in that file breaks when the site changes its markup, because none of it reads markup.
Already parsed, field by field.
The skill names these sources, so the agent picks one instead of guessing at a page. Everything else still goes through the Web Scraping API.
Search, every surface of it
The Google results page, Light SERP, AI Mode, the AI Overview block, News, Shopping, Images, Events and short videos. Plus Bing and Trends.
Businesses, phone included
Google Maps places, reviews, contributor reviews, photos and posts. Plus Yelp and YellowPages.
Homes, stays and fares
Zillow, Redfin, Airbnb, Booking, Google Hotels, Google Flights.
Products and their sellers
Amazon search, product, seller and seller inventory. Plus Shopify.
Channels, posts and transcripts
YouTube search, video, channel and transcript. TikTok profile, posts and keyword search. Instagram.
Openings and employers
Indeed for the openings, Glassdoor for the employers behind them.
Anything with a URL
Any public URL through the Web Scraping API. Markdown for reading, or name the fields and get typed JSON. A site we don't parse out of the box is a custom scraper away.
1,000 free credits is a finished job.
Free
Startup
Business
RecommendedGrowth
Monthly credit volume
Custom price based on required volume
Past 100M credits a month, or terms the self-serve plans do not cover. We shape the contract around your workload.
What are agent skills and how to use them?
An agent skill is a folder with a SKILL.md inside, and the agent reads that file when a prompt matches what it says it covers. This one carries the HasData endpoints, their parameters and the shape of what comes back, so the agent writes a working scraper instead of guessing. Install it once with npx skills add hasdata/agent-skills, then ask for the data you want in plain language.
How is this different from the MCP server?
MCP gives the agent tools to call during a conversation, and every page it fetches lands in the context window. A skill gives it knowledge instead, and what you keep is code in your repository that runs afterwards without an agent. On a run of a few hundred pages that difference is the whole cost, because the scraper writes rows to disk while the agent stays out of the loop. Same endpoints, same balance, different thing to own.
Are the skills free?
Yes. They are markdown in a public repository, so you can install them, read them and fork them. Credits only move when the code your agent writes calls the API, and you start with 1,000 free, no card.
Which agents does it work in?
One line covers most of them. npx skills add hasdata/agent-skills detects what you have installed and writes into each agent's own skills directory, and that registry already knows Claude Code, Cursor, VS Code through Copilot, Codex, Gemini CLI, Devin, Zed and Warp among others. Anything else that reads a SKILL.md can point at the two files directly.
Do I need the CLI?
Only for the hasdata-cli skill, which drives terminal work. The hasdata skill needs nothing but your key.
How many requests can the code run at once?
One on the free tier, so a loop over pages runs sequentially. Paid plans start at 15 concurrent requests. Past your limit the API answers 429, and nothing is charged for the calls that failed.
Do I have to invoke it?
No. It activates when a prompt looks like a HasData job, whether that is scraping, SERP, lead enrichment or price tracking, and the CLI skill even carries a section named Non-obvious triggers for the cases where nobody says "scrape". /hasdata and /hasdata-cli call it explicitly.
What language will the code be in?
Whichever your project already uses. The skill carries endpoints, parameters and response shapes rather than a client library, so the agent writes the request in your stack.
Why not just write my own SKILL.md?
You can, it's markdown. What this one saves is the part that goes stale. Which endpoint answers a given task, what its parameters are called, what comes back. Re-running the add pulls whatever the repo has, so the maintenance is one line instead of a rewrite.
All integrations · The MCP server when the agent should call tools instead of writing code, and the CLI for terminal work
One line away.
The agent reads the endpoints, writes the scraper and hands you the file. What runs on Monday is your code, not a conversation.
Free, open skills · 1,000 free credits · no card