Tool catalog
A Full key lists every tool below; a Read key the read ones.
Outcome tools
Each of these answers a question in one call. You build no scraper for them.
| Tool | What it does | Price | Scope |
|---|---|---|---|
find_local_businesses | The businesses Google Maps lists for a search in a place: name, address, phone, website, rating, number of reviews, category and coordinates. Up to 20 places per call. E-mail addresses are not returned by this tool, because Google Maps holds none; to get them, send the website column to Website contacts as a second step | 10 credits per call | LLM_FULL |
google_search | Google results as rows: web, news or shopping. Web takes one query per call; news and shopping take up to 100 queries, which run as a job | 10 credits per query | LLM_FULL |
search_amazon | The products Amazon lists for a phrase: title, ASIN, price, rating, number of reviews, image and link. Up to 100 phrases; more than one phrase or page runs as a job | 1 credit per result page | LLM_FULL |
get_amazon_product | Amazon product pages by ASIN or product address: title, brand, price, rating, number of reviews, images, description, features, variants, best-seller ranks and technical details. With include_offers: true also each product’s offer listing: every seller’s price, condition and delivery. One product answers at once; up to 500 run as a job | 1 credit per product page, plus 1 credit per product for its offer listing | LLM_FULL |
amazon_seller_leads | The sellers behind an Amazon search, one row per seller, with the business details the seller published on Amazon: store name, company name, business type, email, phone, address, country, VAT number, trade register number and rating, plus the product the seller was found on. Sellers on amazon.de almost always publish an email; sellers on amazon.co.uk and amazon.com do not. Always runs as a job | 1 credit per page read, about 3 credits per seller | LLM_FULL |
idealo_offers | Every shop’s offer for a product on idealo, by EAN or idealo product page: shop name, price, shipping cost, total price, delivery, the shop’s rating and the offer link, plus the product’s name, brand and EAN. The 20 cheapest offers per product. Markets de (default), at, fr, it, es and uk. One product answers at once; up to 1,000 run as a job | 10 credits per product | LLM_FULL |
google_trends | Google Trends interest over time for one phrase, in one country or worldwide | 10 credits per call | LLM_FULL |
fetch_page | The readable text, or the HTML, of one public web page. Pages that need JavaScript are rendered | Usually 5 credits, at most 25 | LLM_FULL |
get_product_data | The product data a shop publishes on its product pages: name, price, currency, availability, brand, product codes (SKU, GTIN / EAN), images, description and rating, where the shop gives them. All addresses of one call belong to one shop. One address answers at once; up to 100 run as a job | Usually 5 credits per page, at most 25 | LLM_FULL |
clean_product_data | Cleans rows you already have and returns them: price in EUR, price per kilogram, litre or piece, trimmed text, duplicate rows removed. Up to 1,000 rows per call. Nothing is fetched and nothing is stored | Free | LLM_READ |
get_results | Where a long job stands and the rows it has collected, in pages of up to 100 | Free | LLM_READ |
cancel_job | Stops a long job. Rows collected before the stop stay stored and stay charged | Free | LLM_FULL |
scrapewise_get_scraper_group_list | List the customer’s scraper groups | Free | LLM_READ |
scrapewise_get_scraper_data_group_client | Read the rows saved in a group, with filters and paging | Free | LLM_READ |
1 credit is €0.00015, the price of one plain page.
How the paid tools work:
- Price first. Every paid tool takes
quote_only: true, which returns the price and the wallet balance without spending anything.quote_onlyis always the most a call can cost: the amount charged is never above the quote. Where a quote is an upper bound (exact: false), the charge is for the pages actually read. - Cost in every result. The result of every paid call says what it cost and what is left in the wallet.
- A retry is charged once. Send the same
idempotency_keywhen you retry a paid call, and it is answered and charged once. A key is remembered for 24 hours by default. - Long jobs. A big request answers at once with a
job_id. Follow it withget_results, stop it withcancel_job. At most 3 jobs run at once per account by default; the next one is refused as busy. - Arguments go inside
body. The paid tools andclean_product_datatake their arguments in abodyobject.get_resultsandcancel_jobtakejobIddirectly. - Scope. An
LLM_READkey lists onlyget_results,clean_product_dataand the tools that read saved rows. The paid tools needLLM_FULL: a paid tool called with anLLM_READkey is refused with403.
A price quote that spends nothing:
{
"name": "find_local_businesses",
"arguments": {
"body": {
"query": "dentist",
"location": "Tallinn",
"quote_only": true
}
}
}The product tools
get_amazon_product, get_product_data and clean_product_data are outcome tools since 13 October 2026.
get_amazon_product
| Input | Meaning |
|---|---|
asins_or_urls (required) | 1 to 500 ASINs (10 letters and digits) or Amazon product addresses. The same product twice is refused |
marketplace | The Amazon ending for ASINs: com (default), de, co.uk, fr, it, es and others. An address carries its own marketplace |
include_offers | true = also the offer listing of each product |
idempotency_key, quote_only | As on every paid tool |
- Returns. One product:
status: "DONE"withrows(one row per product; the row’surlis the product address you asked for),offerswhen asked,rowCount,costMicros,quoteandwalletBalanceMicros. Several products:status: "RUNNING"with ajob_idforget_results. Withinclude_offersa job has two steps:get_resultsreturns the offer rows when it is done and the product rows withstage: 0. - Price. 1 credit per product page, plus 1 credit per product for its offer listing. One product is quoted at 1 credit. A call with several products runs as a job on an Amazon automation the account keeps for it, one per job slot (3 slots by default). Until all three exist, the quote is
N + min(3, N)product pages at most: a job on a slot that has no automation yet reads up to three of its first products once more to make it, and the quote counts them, so 2 products are quoted at 4 credits, 3 at 6 and 5 at 8. Once all three exist, the quote is exactlyN. The charge is for the pages actually read:Non a slot that already has its automation, even when the quote was higher, plus the set-up pages (1 to 3) in the job that makes the automation.quote_onlyis always the most a call can cost. - A product with no data. In a job every product keeps its own row, and
_sw_statussays how it went:OK, orUPSTREAM_ERRORwhen nothing came back for that product (a product that no longer exists on Amazon answers this way), orNO_RESULTSwhen the answer held nothing to read. The row’surlis the address you asked for. The set-up reads the job’s first products one after the other until one gives data. Only when none of the first three does is the call refused with422 MCP_NO_PRODUCT_DATA; the message names those addresses and says how many pages were charged. - Marketplaces. An ASIN is read on
marketplace, an address on its own marketplace, so one call can name products of several marketplaces. Jobs on different marketplaces run on the same account, one after the other or mixed in one call. Until 13 October 2026 a job on a second marketplace was refused with400 LINK_HOST_MISMATCH; that is fixed.
get_product_data
| Input | Meaning |
|---|---|
urls (required) | 1 to 100 product page addresses of one shop (one host). Public http(s) addresses only |
idempotency_key, quote_only | As on every paid tool |
- Returns. One address:
status: "DONE"withrows,rowCount,costMicros,quoteandwalletBalanceMicros. Several addresses:status: "RUNNING"with ajob_idforget_results. A page that has a product in its structured data returns the product row only. A page whose structured data has no product returns every block as a row. A page with no structured product data (JSON-LD) at all, for example a shop that marks its products up as microdata only, returns no rows and is still charged for the page: a page that was delivered is charged whether or not it gave rows. The price is per page, not per row. - Price. One page fetch per address: usually 5 credits, at most 25 for a shop that is hard to fetch. The quote is the upper bound, 25 credits per page. One address is quoted at 1 page. The first job of several pages on a shop reads up to three of its first pages once more to set the reading up, and the quote counts them:
N + min(3, N)pages at most, so 2 pages are quoted at 4, 3 at 6 and 5 at 8. Later jobs on the same shop are quoted atNpages. - One automation per shop. For a job the account keeps one automation per shop in its “MCP results” group and reuses it. Two jobs on the same shop run one after the other. An account keeps up to 50 shops this way by default; above that the call is refused with
409 MCP_SHOP_LIMIT. - Other tools for other pages. Amazon and Google pages have their own tools (
400 URL_NOT_FOR_THIS_TOOL). Addresses of several shops take one call per shop (400 INVALID_URLS). The set-up reads the job’s first pages one after the other until one gives data.422 MCP_NO_PRODUCT_DATAmeans none of the first three did; the message names those addresses and says how many pages were charged.
clean_product_data
| Input | Meaning |
|---|---|
rows (required) | 1 to 1,000 row objects, at most 2 MB together. Rows another tool returned can be passed as they are |
to_eur | Reads price_column (default price) and the currency from currency_column (default currency) or one fixed currency; writes <price_column>_eur at the stored daily rate |
unit_price | price_column divided by quantity_column, times per (1000 with grams = price per kilogram; 1 = price per piece); writes unit_price |
dedupe_by | The columns that identify a row, for example ["ean"]; the first row of each is kept. An empty list removes rows that are equal in every column |
trim | Default true: removes spaces around text values |
rules | Your own rules in the group rule form; they run after the presets |
- Returns.
status: "DONE"withrows,rowCount,rowsIn,rowsAfterCleaningandduplicatesRemoved. A row whose input is missing or unusable is returned unchanged for that rule. - Price. Free. Nothing is fetched, nothing is stored and nothing is charged, so there is nothing to quote. An
LLM_READkey can call it.
The lead and price tools
amazon_seller_leads and idealo_offers are outcome tools since 15 October 2026.
amazon_seller_leads
| Input | Meaning |
|---|---|
keyword (required) | The search phrase, in the marketplace’s language (German words on amazon.de) |
marketplace | The Amazon ending: com (default), de, co.uk, fr, it, es and others |
max_products | Products of the search to look at, 1 to 500, default 20. The search reads up to 20 pages, so fewer products may be found |
max_sellers | The most seller profiles to read, 1 to 500, default 50. When more sellers are found, the ones seen on the most products are kept |
idempotency_key, quote_only | As on every paid tool |
- Returns. Always a job:
status: "RUNNING"with ajob_id, thequoteandretryAfterSeconds. When the job is done,get_resultsreturns one row per seller with the same 17 columns every time:seller_id,store_name,company_name,business_type,email,phone,country,marketplace,address,vat_number,trade_register_number,rating_positive_percent,seller_url,source_asin,source_product_title,source_keywordandproducts_seen.stage: 0returns the search rows andstage: 1the offer rows. - What a seller published. The details come from Amazon as each seller published them. A field a seller left out stays empty; nothing is guessed or filled in from elsewhere. On amazon.de about 99.9% of sellers publish an email. On amazon.co.uk sellers do not publish one in their business details, and on amazon.com none do.
- Price. 1 credit per page read, in three steps: the search pages, one offer listing per product and one profile per seller. That is about 3 credits per seller found.
quote_only: truereturns the upper bound for yourmax_productsandmax_sellers; the charge is never above it. - A step that fails. The job ends
FAILEDand the rows of the earlier steps stay readable.cancel_jobstops the job; rows read so far stay stored and stay charged.
idealo_offers
| Input | Meaning |
|---|---|
eans_or_urls (required) | 1 to 1,000 EAN / GTIN codes (8 to 14 digits) or idealo product page addresses. The same product twice is refused |
market | The idealo market for EAN codes: de (default), at, fr, it, es or uk. An address carries its own market |
idempotency_key, quote_only | As on every paid tool |
- Returns. One product:
status: "DONE"withrows(one row per shop offer, the 20 cheapest offers of the product page),rowCount,costMicros,quoteandwalletBalanceMicros. Several products:status: "RUNNING"with ajob_idforget_results. Rows of a job are saved in the account’s “MCP results” group. A product idealo does not list returns no rows. - Price. 10 credits per product page.
quote_only: truereturns the exact price. - Other pages. An address that is not an idealo product page is refused with
400 URL_NOT_FOR_THIS_TOOL. For the price in one known shop, useget_product_dataon that shop’s product page. Scrapewise is not affiliated with idealo.
Setup tools
The tools below create, edit and run scrapers, groups, rules and schedules. Every tool name starts with scrapewise_ and is the REST operation’s operationId. The Scope column is the lowest MCP key scope that can see the tool: LLM_READ keys see the read-only verbs (list, get, search, preview, export), LLM_FULL keys see everything. The backend can still refuse a call for other reasons (plan feature, wallet balance, the scope matrix). Auto-synthesized from the REST OpenAPI spec’s MCP tag — see the machine-readable list for full input/output schemas.
An interactive Redoc-style per-tool browser is on the roadmap. Until then, the categories below + the live OpenAPI spec are the source of truth.
API key management
| Tool | What it does | Scope |
|---|---|---|
scrapewise_create_api_key | Generate a new API key for the authenticated customer | LLM_FULL |
scrapewise_delete_api_key | Revoke an API key by id | LLM_FULL |
scrapewise_list_api_keys | List all API keys for the authenticated customer | LLM_READ |
Scrapers — create, read, configure
| Tool | What it does | Scope |
|---|---|---|
scrapewise_create_file_scraper | Create an upload scraper in a group from ONE file (CSV, JSON Lines or Excel) and start its import. Up to ~1 MB inline; for a bigger file call it without content to get a ready upload command. Free. See Upload a file | LLM_FULL |
scrapewise_create_scraper | Create a new scraper or update an existing one | LLM_FULL |
scrapewise_create_scraper_v2 | Create or update a scraper (V2 — returns enriched DTO) | LLM_FULL |
scrapewise_delete_scraper | Delete a scraper by id | LLM_FULL |
scrapewise_delete_scraper_preview | Preview deleting a scraper — returns a token to commit within 5 min | LLM_FULL |
scrapewise_get_scraper | Get the full configuration of one scraper by id | LLM_READ |
scrapewise_get_scraper_config_parameters | Get the scraper-builder enum catalogue | LLM_READ |
scrapewise_get_scraper_list | List the customer’s scrapers (summary view) | LLM_READ |
scrapewise_get_scraper_v2 | Get scraper config (V2 — returns enriched DTO) | LLM_READ |
scrapewise_update_file_scraper_file | Send a new file to an upload scraper and start a new import. Replaces the previous file — or, once the file is used in matching, only adds rows and fills empty cells. Free. See Upload a file | LLM_FULL |
scrapewise_update_scraper_fallback | Configure a fallback scraper for a SINGLE_PRODUCT scraper | LLM_FULL |
scrapewise_update_scraper_retention | Set how many data runs to keep for one scraper | LLM_FULL |
scrapewise_update_scraper_schema | Attach or switch a scraper’s schema binding | LLM_FULL |
Scrapers — run and stop
| Tool | What it does | Scope |
|---|---|---|
scrapewise_run_scraper | Schedule a manual run of one scraper | LLM_FULL |
scrapewise_run_scraper_group | Schedule manual runs of every scraper in a group | LLM_FULL |
scrapewise_run_scraper_url_list | Scrape many addresses: one automation, its whole list, one run — in one call. The way to scrape a list; never one scraper per address. See Many URLs. With endpointTag: "websitecontacts" it reads a list of business websites for the email addresses they publish: see Website contacts | LLM_FULL |
scrapewise_stop_scraper | Stop a running scraper | LLM_FULL |
scrapewise_stop_scraper_group | Stop all running scrapers in a group | LLM_FULL |
Preview and page fetch
| Tool | What it does | Scope |
|---|---|---|
scrapewise_get_scraper_load_site | Fetch a URL’s raw HTML content | LLM_READ |
scrapewise_get_scraper_load_site_content | Fetch a URL’s content wrapped as JSON | LLM_READ |
scrapewise_get_scraper_sample_data | Run scraper synchronously and return a small sample of data | LLM_READ |
scrapewise_get_scraper_seo_fields | Get cached SEO meta fields for a scraper’s source URL | LLM_READ |
scrapewise_preview_scraper_from_curl | Auto-detect candidate scraper configs from a curl command | LLM_READ |
scrapewise_preview_scraper_from_url | Auto-detect candidate scraper configs from a URL and preview the data | LLM_READ |
scrapewise_preview_scraper_preview_rule | Preview one post-processing rule against a sample value | LLM_READ |
scrapewise_search_scraper_seo_fields | Look up SEO meta fields for an arbitrary URL (no scraper required) | LLM_READ |
Scraper groups
| Tool | What it does | Scope |
|---|---|---|
scrapewise_create_scraper_group | Create a new scraper group or update an existing one | LLM_FULL |
scrapewise_delete_scraper_group | Delete a group and all its scrapers | LLM_FULL |
scrapewise_delete_scraper_group_preview | Preview deleting a group — returns a token to commit within 5 min | LLM_FULL |
scrapewise_get_scraper_group_ai_control_status | Where the AI check of a group stands: on or off, the phase, the next check and the last result. See AI control | LLM_READ |
scrapewise_get_scraper_group_list | List the customer’s scraper groups | LLM_READ |
scrapewise_get_scraper_group_post_process_rules | Get the rules shared by every scraper in a group, the per-scraper values (labels) their conditions read, and the document version. Optional filter, q, split and summary narrow the scraper list and add each scraper’s row warnings from its latest run. See Rules for all scrapers in a group | LLM_READ |
scrapewise_update_scraper_group_ai_control | Turn “AI control” on or off for one group and choose how often it checks (DAILY, TWICE_WEEKLY, WEEKLY). It can repair scrapers that read the page with selectors (built automatically or by hand), and JSON-LD and API scrapers; AI-schema scrapers get an alert only for now. Switching on needs your first wallet top-up. See AI control | LLM_FULL |
scrapewise_update_scraper_group_currency | Set the currency the Analytics dashboard converts and displays this group’s prices in | LLM_FULL |
scrapewise_update_scraper_group_post_process_rules | Replace the rules shared by every scraper in a group and the per-scraper values (send the version you read). See Rules for all scrapers in a group | LLM_FULL |
scrapewise_update_scraper_group_data_quality | Set the group’s data-quality overrides (row select / link select / price guard / availability backfill) | LLM_FULL |
scrapewise_update_scraper_group_retention | Set how many data runs to keep for a whole group (governs its scrapers) | LLM_FULL |
scrapewise_update_scraper_group_schedule | Set the recurring schedule for a whole group (overrides its scrapers) | LLM_FULL |
scrapewise_update_scraper_group_start_type | Set the run-trigger type for every scraper in a group | LLM_FULL |
Price monitor (per group)
| Tool | What it does | Scope |
|---|---|---|
scrapewise_delete_scraper_group_price_monitor_anchor_competitor | Clear the reference (anchor) competitor for one category | LLM_FULL |
scrapewise_delete_scraper_group_price_monitor_pick | Un-pin the listing chosen under one pairing value | LLM_FULL |
scrapewise_get_scraper_group_price_monitor_anchor_competitors | Read the reference (anchor) competitor set for each category | LLM_READ |
scrapewise_list_scraper_group_price_monitor_picks | List which listing the customer said is theirs, per pairing value | LLM_READ |
scrapewise_update_scraper_group_price_monitor | Set how a group’s rows are read as a price comparison | LLM_FULL |
scrapewise_update_scraper_group_price_monitor_anchor_competitor | Set the reference (anchor) competitor for one category | LLM_FULL |
scrapewise_update_scraper_group_price_monitor_pick | Say which listing under one pairing value is the customer’s own | LLM_FULL |
Scraped data
| Tool | What it does | Scope |
|---|---|---|
scrapewise_delete_scraper_data | Delete the scraped rows produced by a single scraper run | LLM_FULL |
scrapewise_delete_scraper_data_group_category | Delete a saved-filter category from a group | LLM_FULL |
scrapewise_delete_scraper_data_group_category_preview | Preview deleting a saved-filter category — returns a token to commit within 5 min | LLM_FULL |
scrapewise_delete_scraper_data_preview | Preview deleting a scraper run’s data — returns a token to commit within 5 min | LLM_FULL |
scrapewise_export_scraper_data_group | Export the latest scraped data for a group as an Excel file | LLM_READ |
scrapewise_get_scraper_data_group | Get a paginated page of scraped product data for a group | LLM_READ |
scrapewise_get_scraper_data_group_categories | List the customer’s saved custom categories for a group | LLM_READ |
scrapewise_get_scraper_data_group_client | Get scraped data (SDK / MCP variant; opts into prompt-injection-safe rows) | LLM_READ |
scrapewise_update_scraper_data_group_category | Create or update a saved-filter category in a group | LLM_FULL |
Runs, columns and enrichment
| Tool | What it does | Scope |
|---|---|---|
scrapewise_delete_enrichment | Clear a group’s enrichment (delete the enriched dataset + saved recipe) | LLM_FULL |
scrapewise_get_enrichment | Show what a group’s enriched dataset was built from (lineage) | LLM_READ |
scrapewise_get_run_columns | List the columns of a single scraper run (for the Enrich join builder) | LLM_READ |
scrapewise_get_run_columns_batch | List the columns of many scraper runs in one call (batch of the single-run endpoint) | LLM_READ |
scrapewise_get_scraper_job_errors | Get the per-link error list for a scraper run | LLM_READ |
scrapewise_get_scraper_load_history | List scraper runs (paginated, filterable by group / scraper / state) | LLM_READ |
scrapewise_list_enrichable_scrapers | List a group’s scrapers (with their latest run) for the enrichment builder | LLM_READ |
scrapewise_preview_reapply_rules | Run the scraper’s current rules on the first rows of one finished run in memory and show what a re-apply would change. Writes nothing. Free | LLM_READ |
scrapewise_run_reapply_rules | Re-run the scraper’s current rules (its own, then the group’s) on every stored row of one finished run, in the background. Adds new rule columns and updates rule values; never removes a column or a value. Free | LLM_FULL |
scrapewise_get_reapply_rules | Where the latest re-apply of one run stands: PENDING, RUNNING, COMPLETED, CANCELLED or FAILED. Free | LLM_READ |
scrapewise_list_reapply_rules | Every re-apply of this account that is waiting or running. Free | LLM_READ |
scrapewise_cancel_reapply_rules | Stop the active re-apply of one run. Rows already written keep their new values. Free | LLM_FULL |
scrapewise_run_scraper_data_group | Merge data from multiple scraper runs into an enriched dataset. A join recipe sent with it is saved on the group and drawn on the portal’s match canvas as enrichment lines (how) | LLM_FULL |
Matching setups
| Tool | What it does | Scope |
|---|---|---|
scrapewise_get_matcher_config_status | Whether a matching save may be made for a group now: whether a setup exists, the status of the newest matcher job, when it last matched, whether there is new data since, and whether the group is on the newer matching engine | LLM_READ |
scrapewise_get_matcher_history | List a group’s matching runs and stored drafts, newest first, each with the full setup it used. withDeleted=true also lists runs hidden by “delete all matching data” | LLM_READ |
scrapewise_get_matcher_job | Get a group’s saved matching setup in the shape scrapewise_update_matcher_job takes: main list, ID column, match lines (flat and per source), runs in scope, status. 404 when the group has no setup | LLM_READ |
scrapewise_get_matcher_engine_setup | Read every engine setting of a group on the newer matching engine: master side, sources, joins, keys, codes, column roles, thresholds and pictures. include=fields lists which fields the owner may change | LLM_READ |
scrapewise_update_matcher_engine_setup | Replace the whole engine setup of a group on the newer matching engine. Stored as a draft and checked within about a minute; only a clean setup goes live. The owner changes the fields marked for the customer; picture fields stay as they are | LLM_FULL |
scrapewise_update_matcher_engine_setup_fields | Change some fields of that engine setup with a JSON merge patch. All changes of one call go live together or not at all | LLM_FULL |
scrapewise_get_matcher_scope_jobs | List the runs a matching save may use as its scope: the newest finished run per scraper of the group. masterJobId leaves the main list out | LLM_READ |
scrapewise_get_matcher_setup_view | The group’s matching setup as the matching engine sees it now (what the portal canvas draws), and whether it is up to date with the saved job | LLM_READ |
scrapewise_update_matcher_schedule | Set or clear when a group’s matching runs again by itself: after each scrape, daily, every N days or weekly, at a time in a time zone. Never starts a run. Missed earlier times are not run. See Run matching on a schedule | LLM_FULL |
scrapewise_update_matcher_job | Save a group’s matching setup. On a classic group, draft=false replaces the previous match results and starts a new matching run; draft=true only stores the setup. On a group on the newer matching engine the owner saves drafts of the text settings: draft=false is refused with 403 ENGINE_RUN_ADMIN_ONLY, a changed picture setting with 403 FIELD_ADMIN_ONLY, and a group before its first run answers 423. AI-agent keys must send idempotency_key: a new value per save, the same value only to retry that save. Optional requireIdle / afterGroupId refuse the save (409) while matching or scrapers are still running. See Product matching | LLM_FULL |
Every other /match route (delete, cancel, review, matched data) is REST only. A setup saved with these tools is drawn on the portal canvas by itself.
Delivery and daily file
| Tool | What it does | Scope |
|---|---|---|
scrapewise_get_group_delivery_status | Is a group’s data for one day complete: scrapes, matching and the daily file. Free. See Delivery status | LLM_READ |
scrapewise_get_matched_export_latest_status | Is the group’s daily matched file ready, how fresh it is, and the address to download it. Free. See Daily matched file | LLM_READ |
scrapewise_update_group_delivery_webhook | Create or change the group’s signed delivery webhook. The secret is answered once, at create. Group owner only | LLM_FULL |
scrapewise_run_group_delivery_webhook_test | Send one signed test call to the group’s webhook now. At most one per minute | LLM_FULL |
scrapewise_delete_group_delivery_webhook | Remove the group’s webhook and its secret | LLM_FULL |
Schemas
| Tool | What it does | Scope |
|---|---|---|
scrapewise_create_customer_schema | Create or update a customer-scoped extraction schema | LLM_FULL |
scrapewise_delete_customer_schema | Delete a customer-scoped extraction schema by id | LLM_FULL |
scrapewise_delete_customer_schema_preview | Preview deleting a customer schema — returns a token to commit within 5 min | LLM_FULL |
scrapewise_list_customer_schema | List the authenticated customer’s extraction schemas | LLM_READ |
Sites and sitemaps
| Tool | What it does | Scope |
|---|---|---|
scrapewise_create_scraper_site | Create or update a Site (the URL list backing a category-style scraper) | LLM_FULL |
scrapewise_delete_scraper_site | Delete a Site (and its Link inventory) by id | LLM_FULL |
scrapewise_get_scraper_site | Get the Site config for a given scraper (if the scraper uses a Site) | LLM_READ |
scrapewise_get_scraper_site_links | Get the paginated, filterable Link inventory for a Site | LLM_READ |
scrapewise_get_scraper_sitemaps | Browse the harvested sitemap entries for a scraper | LLM_READ |
scrapewise_run_scraper_sitemaps_harvest | Crawl a target site’s sitemap.xml and ingest the URL list | LLM_FULL |
scrapewise_update_scraper_site_from_source | Build and save one automation’s link list from another automation’s latest results, on the server (replaces the stored list) | LLM_FULL |
Shared groups
| Tool | What it does | Scope |
|---|---|---|
scrapewise_get_scraper_shared_group_list | List groups OTHER customers have shared to this customer | LLM_READ |
scrapewise_list_scraper_shared_group_list | List the emails this group is currently shared to | LLM_READ |
scrapewise_stop_scraper_shared_group | Revoke a customer’s share access on a group | LLM_FULL |
scrapewise_update_scraper_shared_group | Share a group with one or more other customers (by email) | LLM_FULL |
What the fetching tools can target
scrapewise_preview_scraper_from_url, scrapewise_run_scraper, scrapewise_run_scraper_group and scrapewise_run_scraper_url_list all take ordinary web URLs. For 18 targets Scrapewise recognises the URL and calls a dedicated endpoint instead of scraping the HTML, which is faster and more reliable. You do not select this — hand over the normal public URL and the routing happens server-side.
| Target | Dedicated endpoint |
|---|---|
| Amazon search | /plugin/amazon/search |
| Amazon offer listing | /plugin/amazon/offer-listing |
| Amazon deals | /plugin/amazon/deals |
| Amazon best sellers | /plugin/amazon/bestsellers |
| Amazon seller profile | /plugin/amazon/seller |
| Walmart search | /plugin/walmart/search |
| Google Shopping search | /plugin/google/shopping |
| Google Shopping product | /plugin/google/shopping/product |
| Google Play search | /plugin/google/play-store |
| Google Play reviews | /plugin/google/play-store/reviews |
| Google Maps place | /plugin/google/maps/place |
| Google Maps reviews | /plugin/google/maps/reviews |
| Google News | /plugin/google/news |
| YouTube | /plugin/google/youtube |
| Google Flights | /plugin/google/flights |
| Google Hotels | /plugin/google/hotels |
| Google Trends | /plugin/google/trends |
| Gemini | /plugin/gemini/chat |
The three in bold are new: Amazon deals, best sellers and seller profile. They are priced like every other Amazon plugin — €0.00015 per delivered page.
Every field, not a chosen few. 16 of these 18 return the complete set of fields the upstream response contains, so a preview offers every field that is actually there and a scraper can save any of them. The two exceptions are Google Trends and Gemini, which are shaped for a chart and a question-and-answer view respectively and keep their fixed shape.
What tools cost
This section is about the setup tools; the prices of the outcome tools are in the table at the top. Read-only tools (list, get, search, export) are free. The tools that fetch a page — scrapewise_run_scraper, scrapewise_run_scraper_group, scrapewise_run_scraper_url_list, scrapewise_preview_scraper_from_url, scrapewise_preview_scraper_from_curl — are charged per page delivered against the prepaid wallet, from €0.00015 per plain page. The file tools — scrapewise_create_file_scraper and scrapewise_update_file_scraper_file — fetch nothing and are free; they work with a €0 wallet. When the wallet is empty the call comes back as a tool error with HTTP 402 and the code WALLET_INSUFFICIENT_BALANCE; see MCP overview for what an agent should do with it, and Wallet & billing for the full price list.
What’s NOT exposed via MCP
Some REST endpoints are deliberately excluded from MCP:
| Endpoint | Why |
|---|---|
/api/admin/* | Root-auth only |
/api/customer/* | Customer/account management — too sensitive |
/api/llm/* | Internal LLM endpoints |
/api/matcher/* | Internal matcher service |
/api/scraper/group/{id}/match/** except the matching setup tools and the daily file status | Delete, cancel, review and matched-data routes — use the portal or the REST API |
/api/portal/*, /api/portal-events/* | Portal UI specific |
/api/plan-features, /api/customer-switch/* | Billing / plan catalogue and account admin |
For the customer routes among these (delete, cancel, review, matched data), use the REST API with your Full or Read key, or the portal.
Annotations
Each tool carries machine-readable annotations the agent can reason about:
| Annotation | Meaning |
|---|---|
readOnly: true | Tool does not mutate state |
destructive: true | Tool can delete data (irreversible) |
idempotent: true | Safe to retry; same inputs → same effect |
openWorld: true | Tool’s side effects extend beyond Scrapewise (e.g. scrapewise_run_scraper makes outbound HTTP requests to target sites) |
Well-behaved clients (Claude Desktop, claude.ai) prompt for confirmation on destructive tools by default.
What’s next
- Wire Claude to use these tools → MCP quickstart (address
https://mcp.scrapewise.ai/mcp) - Prompt-injection contract → Prompt injection
- Underlying REST surface → REST API overview