MCP server — 26 tools live

Your agent is now
a scraping engineer

Ask in plain language. The agent works out the most efficient way to read each page, clears the anti-bot layer, validates its own output — and hands you structured data. 26 tools for Claude, Cursor and every MCP client.

$
agent sessionmcp connected
0
MCP tools
0
Tool categories
0
Extraction types
0.0×
Cheaper via smart routing
Connected from
Claude Desktop
Claude Code
Cursor
VS Code
Windsurf
Zed
Cline
n8n
LangGraph
OpenAI Agents
Claude Desktop
Claude Code
Cursor
VS Code
Windsurf
Zed
Cline
n8n
LangGraph
OpenAI Agents
Install

One config block.
Any MCP client.

Hosted and remote — nothing to install. Point your client at the server, pass your x-api-key, and all 26 tools show up in the next message.

Step 01

Paste one server block

Add the entry, restart Claude, and all 26 tools appear in the tool tray on the next message.

✓macOS, Windows and Linux
✓Your own key — never sent to the model
✓Hosted server, always up to date
{
  "mcpServers": {
    "jetscrape": {
      "url": "https://mcp.jetscrape.com/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      }
    }
  }
}
Tool surface

26 tools across
seven categories

Typed, described and rate-aware, so the model picks the right one without prompting tricks. Discovery and extraction sit up front; templates, routines and jobs make the work repeatable.

Scraping core3 tools

The engine: structured extraction through Cloudflare, anti-bot and JS rendering.

scrape_unblockerget_htmlai_scrape
Smart discovery2 tools

Map how a page loads its content, then take the lightest route to the data.

discover_api_endpointsread_captured_response
AI helpers1 tool

Turn a plain-language description into a validated extraction schema.

generate_schema
Templates & configs11 tools

Save working selectors as named, reusable templates — bulk URLs included.

list_templateslist_available_configscreate_templateupdate_templateget_template_selectorscreate_template_selectorupdate_template_selectorget_template_urlsadd_template_urladd_template_bulk_urlsdelete_template_urls
Routines & jobs4 tools

Async dispatch with live progress, ETA and one-call reruns of any saved job.

create_template_routinerun_routineget_job_statuscheck_job
Public flows4 tools

Run shared flows and single nodes by id — with per-call overrides.

get_public_flowrun_public_flowrun_public_flow_noderun_public_node
Documentation1 tool

Semantic search over the docs so a stuck agent unblocks itself. No API key needed.

search_docs
Anatomy of a call

From one sentence
to structured data

Four hops. The agent picks the cheap path, proves the data is real, and saves the job for next time.

01You ask in plain language
No selectors, no CSS, no XPath. "Pull the product names and prices from this site" is a complete spec.
02The agent maps the page
discover_api_endpoints opens a real browser, scrolls and clicks, and works out how the page loads its content.
03It takes the lightest path
scrape_unblocker fetches over the most efficient route through the anti-bot layer — 0.66s and 2.8 KB instead of 7.82s and 5.9 KB.
04It checks its own work
Every response carries a diagnostics block. Empty fields and length mismatches are caught and retried without you.
prompt.txt
"pull the product names and
 prices from shop.example.com"

// no selectors
// no schema
// no code
user → agentplain language
discover_api_endpoints
{
  "url": "shop.example.com/search?q=coffee",
  "actions": ["scroll", "wait"]
}

→ lightest source selected
  content-type: application/json
  size: 2.8 KB
real browser3 sources mapped
scrape_unblocker
{
  "url": "<mapped source>",
  "selectors": [
    { "name":  "$.products[*].name"  },
    { "name":  "$.products[*].price",
      "transform": "regex:[0-9,.]+" }
  ]
}
anti-bot layer0.66s
result.json
{
  "rows": 148,
  "diagnostics": {
    "empty_fields": [],
    "length_mismatch": []
  },
  "saved": { "routine": "rtn_7f21c" }
}
agent → youdiagnostics clean
Deep dive

Built for agents that
run unattended

01 / Smart discovery

Stop parsing heavy pages. Read the data light.

discover_api_endpoints opens the page in a real browser and maps how it loads its content — scroll, click and form actions included, so lazy-loaded data shows up too. Measured against rendering the full page: 0.66s / 2.8 KB versus 7.82s / 5.9 KB.

How discovery works →
discover.json
{
  "url": "shop.example.com/list",
  "actions": ["scroll", "click:.tab-reviews"]
}

→ 3 data sources mapped
  search results      2.8 KB  json
  reviews             1.1 KB  json
  analytics           —       skipped

// 11.8× cheaper than a full render
02 / No selectors

Describe the fields. Get the schema.

generate_schema turns "product name, price, pre-discount price" into a validated JSON schema, and ai_scrape extracts against it. Nobody writes a CSS selector — and feedback loops refine the schema in place.

See ai_scrape →
ai_scrape.json
// generate_schema
"product name, price, pre-discount price"

→ {
    "name":       "string",
    "price":      "number",
    "listPrice":  "number"
  }

// ai_scrape(url, schema) → rows
03 / Self-verification

It catches the empty-data trap itself.

The classic scraping failure is a 200 OK full of nothing. Every response ships a diagnostics block listing empty fields and list-length mismatches, so the agent fixes the selector and retries — no human in the loop.

Read about diagnostics →
diagnostics.json
"diagnostics": {
  "empty_fields": ["listPrice"],
  "length_mismatch": [
    { "field": "reviews", "got": 0, "want": 20 }
  ]
}

// agent repairs the selector and retries
// second pass → diagnostics clean
04 / Reuse

Set it up once. Run it forever.

Every working scrape is saved as a config plus a URL list plus a runnable routine. The agent never rebuilds the same job — run_routine reruns it in a single async call, and CSV bulk upload scales the URL list.

Templates & routines →
routine.json
create_template_routine({ configId })
→ { "routineId": "rtn_7f21c" }

run_routine("rtn_7f21c")
→ { "jobId": "job_9d4", "async": true }

get_job_status("job_9d4")
→ { "progress": 0.62, "etaSeconds": 41 }
05 / Interaction

Content behind a click is still content.

Scroll, click, hover, type, wait and multi-field fill_form. Infinite-scroll lists, reviews hidden behind a tab, results behind a search form and login-gated pages all become scrapable.

Browser actions →
actions.json
{
  "actions": [
    { "click": ".tab-reviews" },
    { "scroll": "bottom", "times": 4 },
    { "wait": "networkidle" }
  ]
}

// lazy-loaded content → captured
Under the hood

14 ways in,
14 ways to clean it

Fourteen extraction types and fourteen transform methods, all declared at selector level — so data arrives clean instead of being cleaned later. Every call is authenticated with your own x-api-key.

JSON PATHdotted path + GJSONnested JSON data
CSSTEXT · ATTRIBUTE · INNER_HTMLclassic markup
SCHEMAJSON-LD / Schema.orgrich results
NEXT.JS__NEXT_DATA__hydration payload
HTTPheader · raw bodymeta & redirects
GOJAinline JS expressionanything else
Transform pipeline47ms
// transforms run at selector level
{
  "selector": "$.products[*].price",
  "transform": [
    { "regex": "[0-9]+[.,][0-9]{2}" },
    { "replace": { ",": "." } },
    { "cast": "number" }
  ],
  "iterate": {
    "url": "?page={n}",   // auto pagination
    "until": "empty"
  }
}

// also: split · merge · base64 decode
// conditional assignment · dedupe
Pricing

Pay for volume, not for features

Every plan ships the same product. Browser rendering, residential proxies, MCP, webhooks — all of it, from the free tier up. Pick the volume you need.

2 months free

How many credits do I need?

1 credit each

2 credits each

6 credits each

Monthly total 42,000 credits
Cheapest plan that covers it: Starter

Free

For evaluating

$0
/ month
10,000 credits / month
≈ 5,000 HTML pages or 1,666 rendered pages
  • 2 concurrent requests
  • 10 requests / minute
  • 1 seat
  • 24-hour result retention
  • Community support
Start free — no card required
Your volume

Best fit for the volume you entered. Starter

For side projects

$59
/ month
100,000 credits / month
≈ 50,000 HTML pages or 16,666 rendered pages
  • 5 concurrent requests
  • 60 requests / minute
  • 2 seats
  • 7-day result retention
  • Email support
Start free trial
Most popular

Recommended plan. Growth

For production agents

$249
/ month
500,000 credits / month
≈ 250,000 HTML pages or 83,333 rendered pages
  • 20 concurrent requests
  • 300 requests / minute
  • 5 seats
  • 30-day result retention
  • Email support, 1 business day
Start free trial

Scale

For teams at scale

$799
/ month
2,000,000 credits / month
≈ 1,000,000 HTML pages or 333,333 rendered pages
  • 75 concurrent requests
  • 1,500 requests / minute
  • 25 seats
  • 90-day result retention
  • Priority support, 4-hour response
Start free trial

All of this is in every plan, including Free

  • Plain HTTP, HTML and browser rendering — no premium tier for JavaScript
  • Residential proxies and geo targeting — no per-request surcharge
  • HTML, JSON and Markdown output, plus screenshots
  • Structured extraction
  • MCP — local server and remote endpoint
  • Scoped API keys with per-key budgets
  • Webhooks, streaming and scheduled monitors
  • Full request log and CSV export

You are never charged for failed requests or cache hits.

Enterprise

Need more than an API?

Above two million credits a month, the interesting problem usually stops being throughput. It becomes which sources, which schema, how the data reaches you, and how clean it is when it lands.

That is a project, and we run it with you.

  • A named engineer and account contact — not a ticket queue
  • Project scoping — sources, schema and refresh cadence defined together before anything runs
  • Delivery that fits your pipeline — API, S3, SFTP, webhook or a direct database load
  • Data processing — cleaning, normalisation, deduplication
  • Product matching across sources and catalogues
  • Enrichment — categories, attributes, images, barcodes, derived fields
  • A custom SLA for uptime, latency and freshness
  • Dedicated proxy pool on request
Contact sales

Prices include VAT. Credits reset monthly and do not roll over. Overage is available on Starter and above at the plan's credit rate + 30%, and is capped by default — you set the cap. Annual plans are billed once for twelve months.

Give your agent
the whole web

Free tier included. No credit card. Paste the config block and your first scrape is about ninety seconds away.

$claude mcp add jetscrape --transport http https://mcp.jetscrape.com/mcp