Skip to Content
MCP GatewayTool catalog

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.

ToolWhat it doesPriceScope
find_local_businessesThe 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 step10 credits per callLLM_FULL
google_searchGoogle 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 job10 credits per queryLLM_FULL
search_amazonThe 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 job1 credit per result pageLLM_FULL
get_amazon_productAmazon 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 job1 credit per product page, plus 1 credit per product for its offer listingLLM_FULL
amazon_seller_leadsThe 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 job1 credit per page read, about 3 credits per sellerLLM_FULL
idealo_offersEvery 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 job10 credits per productLLM_FULL
google_trendsGoogle Trends interest over time for one phrase, in one country or worldwide10 credits per callLLM_FULL
fetch_pageThe readable text, or the HTML, of one public web page. Pages that need JavaScript are renderedUsually 5 credits, at most 25LLM_FULL
get_product_dataThe 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 jobUsually 5 credits per page, at most 25LLM_FULL
clean_product_dataCleans 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 storedFreeLLM_READ
get_resultsWhere a long job stands and the rows it has collected, in pages of up to 100FreeLLM_READ
cancel_jobStops a long job. Rows collected before the stop stay stored and stay chargedFreeLLM_FULL
scrapewise_get_scraper_group_listList the customer’s scraper groupsFreeLLM_READ
scrapewise_get_scraper_data_group_clientRead the rows saved in a group, with filters and pagingFreeLLM_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_only is 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_key when 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 with get_results, stop it with cancel_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 and clean_product_data take their arguments in a body object. get_results and cancel_job take jobId directly.
  • Scope. An LLM_READ key lists only get_results, clean_product_data and the tools that read saved rows. The paid tools need LLM_FULL: a paid tool called with an LLM_READ key is refused with 403.

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

InputMeaning
asins_or_urls (required)1 to 500 ASINs (10 letters and digits) or Amazon product addresses. The same product twice is refused
marketplaceThe Amazon ending for ASINs: com (default), de, co.uk, fr, it, es and others. An address carries its own marketplace
include_offerstrue = also the offer listing of each product
idempotency_key, quote_onlyAs on every paid tool
  • Returns. One product: status: "DONE" with rows (one row per product; the row’s url is the product address you asked for), offers when asked, rowCount, costMicros, quote and walletBalanceMicros. Several products: status: "RUNNING" with a job_id for get_results. With include_offers a job has two steps: get_results returns the offer rows when it is done and the product rows with stage: 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 exactly N. The charge is for the pages actually read: N on 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_only is always the most a call can cost.
  • A product with no data. In a job every product keeps its own row, and _sw_status says how it went: OK, or UPSTREAM_ERROR when nothing came back for that product (a product that no longer exists on Amazon answers this way), or NO_RESULTS when the answer held nothing to read. The row’s url is 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 with 422 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 with 400 LINK_HOST_MISMATCH; that is fixed.

get_product_data

InputMeaning
urls (required)1 to 100 product page addresses of one shop (one host). Public http(s) addresses only
idempotency_key, quote_onlyAs on every paid tool
  • Returns. One address: status: "DONE" with rows, rowCount, costMicros, quote and walletBalanceMicros. Several addresses: status: "RUNNING" with a job_id for get_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 at N pages.
  • 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_DATA means none of the first three did; the message names those addresses and says how many pages were charged.

clean_product_data

InputMeaning
rows (required)1 to 1,000 row objects, at most 2 MB together. Rows another tool returned can be passed as they are
to_eurReads 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_priceprice_column divided by quantity_column, times per (1000 with grams = price per kilogram; 1 = price per piece); writes unit_price
dedupe_byThe 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
trimDefault true: removes spaces around text values
rulesYour own rules in the group rule form; they run after the presets
  • Returns. status: "DONE" with rows, rowCount, rowsIn, rowsAfterCleaning and duplicatesRemoved. 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_READ key can call it.

The lead and price tools

amazon_seller_leads and idealo_offers are outcome tools since 15 October 2026.

amazon_seller_leads

InputMeaning
keyword (required)The search phrase, in the marketplace’s language (German words on amazon.de)
marketplaceThe Amazon ending: com (default), de, co.uk, fr, it, es and others
max_productsProducts 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_sellersThe 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_onlyAs on every paid tool
  • Returns. Always a job: status: "RUNNING" with a job_id, the quote and retryAfterSeconds. When the job is done, get_results returns 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_keyword and products_seen. stage: 0 returns the search rows and stage: 1 the 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: true returns the upper bound for your max_products and max_sellers; the charge is never above it.
  • A step that fails. The job ends FAILED and the rows of the earlier steps stay readable. cancel_job stops the job; rows read so far stay stored and stay charged.

idealo_offers

InputMeaning
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
marketThe idealo market for EAN codes: de (default), at, fr, it, es or uk. An address carries its own market
idempotency_key, quote_onlyAs on every paid tool
  • Returns. One product: status: "DONE" with rows (one row per shop offer, the 20 cheapest offers of the product page), rowCount, costMicros, quote and walletBalanceMicros. Several products: status: "RUNNING" with a job_id for get_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: true returns 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, use get_product_data on 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

ToolWhat it doesScope
scrapewise_create_api_keyGenerate a new API key for the authenticated customerLLM_FULL
scrapewise_delete_api_keyRevoke an API key by idLLM_FULL
scrapewise_list_api_keysList all API keys for the authenticated customerLLM_READ

Scrapers — create, read, configure

ToolWhat it doesScope
scrapewise_create_file_scraperCreate 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 fileLLM_FULL
scrapewise_create_scraperCreate a new scraper or update an existing oneLLM_FULL
scrapewise_create_scraper_v2Create or update a scraper (V2 — returns enriched DTO)LLM_FULL
scrapewise_delete_scraperDelete a scraper by idLLM_FULL
scrapewise_delete_scraper_previewPreview deleting a scraper — returns a token to commit within 5 minLLM_FULL
scrapewise_get_scraperGet the full configuration of one scraper by idLLM_READ
scrapewise_get_scraper_config_parametersGet the scraper-builder enum catalogueLLM_READ
scrapewise_get_scraper_listList the customer’s scrapers (summary view)LLM_READ
scrapewise_get_scraper_v2Get scraper config (V2 — returns enriched DTO)LLM_READ
scrapewise_update_file_scraper_fileSend 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 fileLLM_FULL
scrapewise_update_scraper_fallbackConfigure a fallback scraper for a SINGLE_PRODUCT scraperLLM_FULL
scrapewise_update_scraper_retentionSet how many data runs to keep for one scraperLLM_FULL
scrapewise_update_scraper_schemaAttach or switch a scraper’s schema bindingLLM_FULL

Scrapers — run and stop

ToolWhat it doesScope
scrapewise_run_scraperSchedule a manual run of one scraperLLM_FULL
scrapewise_run_scraper_groupSchedule manual runs of every scraper in a groupLLM_FULL
scrapewise_run_scraper_url_listScrape 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 contactsLLM_FULL
scrapewise_stop_scraperStop a running scraperLLM_FULL
scrapewise_stop_scraper_groupStop all running scrapers in a groupLLM_FULL

Preview and page fetch

ToolWhat it doesScope
scrapewise_get_scraper_load_siteFetch a URL’s raw HTML contentLLM_READ
scrapewise_get_scraper_load_site_contentFetch a URL’s content wrapped as JSONLLM_READ
scrapewise_get_scraper_sample_dataRun scraper synchronously and return a small sample of dataLLM_READ
scrapewise_get_scraper_seo_fieldsGet cached SEO meta fields for a scraper’s source URLLLM_READ
scrapewise_preview_scraper_from_curlAuto-detect candidate scraper configs from a curl commandLLM_READ
scrapewise_preview_scraper_from_urlAuto-detect candidate scraper configs from a URL and preview the dataLLM_READ
scrapewise_preview_scraper_preview_rulePreview one post-processing rule against a sample valueLLM_READ
scrapewise_search_scraper_seo_fieldsLook up SEO meta fields for an arbitrary URL (no scraper required)LLM_READ

Scraper groups

ToolWhat it doesScope
scrapewise_create_scraper_groupCreate a new scraper group or update an existing oneLLM_FULL
scrapewise_delete_scraper_groupDelete a group and all its scrapersLLM_FULL
scrapewise_delete_scraper_group_previewPreview deleting a group — returns a token to commit within 5 minLLM_FULL
scrapewise_get_scraper_group_ai_control_statusWhere the AI check of a group stands: on or off, the phase, the next check and the last result. See AI controlLLM_READ
scrapewise_get_scraper_group_listList the customer’s scraper groupsLLM_READ
scrapewise_get_scraper_group_post_process_rulesGet 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 groupLLM_READ
scrapewise_update_scraper_group_ai_controlTurn “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 controlLLM_FULL
scrapewise_update_scraper_group_currencySet the currency the Analytics dashboard converts and displays this group’s prices inLLM_FULL
scrapewise_update_scraper_group_post_process_rulesReplace 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 groupLLM_FULL
scrapewise_update_scraper_group_data_qualitySet the group’s data-quality overrides (row select / link select / price guard / availability backfill)LLM_FULL
scrapewise_update_scraper_group_retentionSet how many data runs to keep for a whole group (governs its scrapers)LLM_FULL
scrapewise_update_scraper_group_scheduleSet the recurring schedule for a whole group (overrides its scrapers)LLM_FULL
scrapewise_update_scraper_group_start_typeSet the run-trigger type for every scraper in a groupLLM_FULL

Price monitor (per group)

ToolWhat it doesScope
scrapewise_delete_scraper_group_price_monitor_anchor_competitorClear the reference (anchor) competitor for one categoryLLM_FULL
scrapewise_delete_scraper_group_price_monitor_pickUn-pin the listing chosen under one pairing valueLLM_FULL
scrapewise_get_scraper_group_price_monitor_anchor_competitorsRead the reference (anchor) competitor set for each categoryLLM_READ
scrapewise_list_scraper_group_price_monitor_picksList which listing the customer said is theirs, per pairing valueLLM_READ
scrapewise_update_scraper_group_price_monitorSet how a group’s rows are read as a price comparisonLLM_FULL
scrapewise_update_scraper_group_price_monitor_anchor_competitorSet the reference (anchor) competitor for one categoryLLM_FULL
scrapewise_update_scraper_group_price_monitor_pickSay which listing under one pairing value is the customer’s ownLLM_FULL

Scraped data

ToolWhat it doesScope
scrapewise_delete_scraper_dataDelete the scraped rows produced by a single scraper runLLM_FULL
scrapewise_delete_scraper_data_group_categoryDelete a saved-filter category from a groupLLM_FULL
scrapewise_delete_scraper_data_group_category_previewPreview deleting a saved-filter category — returns a token to commit within 5 minLLM_FULL
scrapewise_delete_scraper_data_previewPreview deleting a scraper run’s data — returns a token to commit within 5 minLLM_FULL
scrapewise_export_scraper_data_groupExport the latest scraped data for a group as an Excel fileLLM_READ
scrapewise_get_scraper_data_groupGet a paginated page of scraped product data for a groupLLM_READ
scrapewise_get_scraper_data_group_categoriesList the customer’s saved custom categories for a groupLLM_READ
scrapewise_get_scraper_data_group_clientGet scraped data (SDK / MCP variant; opts into prompt-injection-safe rows)LLM_READ
scrapewise_update_scraper_data_group_categoryCreate or update a saved-filter category in a groupLLM_FULL

Runs, columns and enrichment

ToolWhat it doesScope
scrapewise_delete_enrichmentClear a group’s enrichment (delete the enriched dataset + saved recipe)LLM_FULL
scrapewise_get_enrichmentShow what a group’s enriched dataset was built from (lineage)LLM_READ
scrapewise_get_run_columnsList the columns of a single scraper run (for the Enrich join builder)LLM_READ
scrapewise_get_run_columns_batchList the columns of many scraper runs in one call (batch of the single-run endpoint)LLM_READ
scrapewise_get_scraper_job_errorsGet the per-link error list for a scraper runLLM_READ
scrapewise_get_scraper_load_historyList scraper runs (paginated, filterable by group / scraper / state)LLM_READ
scrapewise_list_enrichable_scrapersList a group’s scrapers (with their latest run) for the enrichment builderLLM_READ
scrapewise_preview_reapply_rulesRun 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. FreeLLM_READ
scrapewise_run_reapply_rulesRe-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. FreeLLM_FULL
scrapewise_get_reapply_rulesWhere the latest re-apply of one run stands: PENDING, RUNNING, COMPLETED, CANCELLED or FAILED. FreeLLM_READ
scrapewise_list_reapply_rulesEvery re-apply of this account that is waiting or running. FreeLLM_READ
scrapewise_cancel_reapply_rulesStop the active re-apply of one run. Rows already written keep their new values. FreeLLM_FULL
scrapewise_run_scraper_data_groupMerge 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

ToolWhat it doesScope
scrapewise_get_matcher_config_statusWhether 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 engineLLM_READ
scrapewise_get_matcher_historyList 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_jobGet 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 setupLLM_READ
scrapewise_get_matcher_engine_setupRead 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 changeLLM_READ
scrapewise_update_matcher_engine_setupReplace 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 areLLM_FULL
scrapewise_update_matcher_engine_setup_fieldsChange some fields of that engine setup with a JSON merge patch. All changes of one call go live together or not at allLLM_FULL
scrapewise_get_matcher_scope_jobsList the runs a matching save may use as its scope: the newest finished run per scraper of the group. masterJobId leaves the main list outLLM_READ
scrapewise_get_matcher_setup_viewThe 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 jobLLM_READ
scrapewise_update_matcher_scheduleSet 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 scheduleLLM_FULL
scrapewise_update_matcher_jobSave 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 matchingLLM_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

ToolWhat it doesScope
scrapewise_get_group_delivery_statusIs a group’s data for one day complete: scrapes, matching and the daily file. Free. See Delivery statusLLM_READ
scrapewise_get_matched_export_latest_statusIs the group’s daily matched file ready, how fresh it is, and the address to download it. Free. See Daily matched fileLLM_READ
scrapewise_update_group_delivery_webhookCreate or change the group’s signed delivery webhook. The secret is answered once, at create. Group owner onlyLLM_FULL
scrapewise_run_group_delivery_webhook_testSend one signed test call to the group’s webhook now. At most one per minuteLLM_FULL
scrapewise_delete_group_delivery_webhookRemove the group’s webhook and its secretLLM_FULL

Schemas

ToolWhat it doesScope
scrapewise_create_customer_schemaCreate or update a customer-scoped extraction schemaLLM_FULL
scrapewise_delete_customer_schemaDelete a customer-scoped extraction schema by idLLM_FULL
scrapewise_delete_customer_schema_previewPreview deleting a customer schema — returns a token to commit within 5 minLLM_FULL
scrapewise_list_customer_schemaList the authenticated customer’s extraction schemasLLM_READ

Sites and sitemaps

ToolWhat it doesScope
scrapewise_create_scraper_siteCreate or update a Site (the URL list backing a category-style scraper)LLM_FULL
scrapewise_delete_scraper_siteDelete a Site (and its Link inventory) by idLLM_FULL
scrapewise_get_scraper_siteGet the Site config for a given scraper (if the scraper uses a Site)LLM_READ
scrapewise_get_scraper_site_linksGet the paginated, filterable Link inventory for a SiteLLM_READ
scrapewise_get_scraper_sitemapsBrowse the harvested sitemap entries for a scraperLLM_READ
scrapewise_run_scraper_sitemaps_harvestCrawl a target site’s sitemap.xml and ingest the URL listLLM_FULL
scrapewise_update_scraper_site_from_sourceBuild and save one automation’s link list from another automation’s latest results, on the server (replaces the stored list)LLM_FULL

Shared groups

ToolWhat it doesScope
scrapewise_get_scraper_shared_group_listList groups OTHER customers have shared to this customerLLM_READ
scrapewise_list_scraper_shared_group_listList the emails this group is currently shared toLLM_READ
scrapewise_stop_scraper_shared_groupRevoke a customer’s share access on a groupLLM_FULL
scrapewise_update_scraper_shared_groupShare 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.

TargetDedicated 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:

EndpointWhy
/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 statusDelete, 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:

AnnotationMeaning
readOnly: trueTool does not mutate state
destructive: trueTool can delete data (irreversible)
idempotent: trueSafe to retry; same inputs → same effect
openWorld: trueTool’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