↑ ↓ to move ↵ to open

Tools

What each tool does and what it costs.

These are the tools an AI agent sees when it connects to https://data.upscrape.com/mcp. An agent picks them by itself; this page is for when you want to know what it can do, or you are building on the tools directly.

Some tools appear only when the connection allows them: account, feedback and collections are off unless you tick them when connecting, and a read-only connection has no tools that spend credits.

Find an endpoint

upscrape_search_capabilities

Finds endpoints by task, platform, URL or category. Free.

JSON
{"query": "product search", "platform": "amazon", "limit": 10}
  • Results give each endpoint's ID, platform, name, what it does, price, run time and whether your input is ready. Up to three top matches include the full input schema and an example; send include_schema: false for summaries only.

  • limit is 5 for a search and 20 for browsing, up to 100. Follow next_cursor, with the same query and filters, for more.

  • A URL narrows the search to that platform, or to the website tools for any other site. An exact endpoint ID returns just that endpoint.

upscrape_describe_capability

Gives one endpoint's exact input schema, an example input, its run time and price. Free.

JSON
{"capability": "amazon.products.search"}

Use the schema it returns; never guess fields from an endpoint's name.

Run it

upscrape_prepare

Checks an input and shows the exact price, without running anything or setting credits aside. Free.

JSON
{"capability": "amazon.products.search", "input": {"query": "wireless earbuds"}}

The answer says whether the input is ready, lists missing fields and errors, and gives the price for this input. A ready answer includes execute_arguments: pass them to upscrape_execute as they are, with the price ceiling and an operation_key already filled in. The price is a preview: if it changes before the run, the ceiling stops the call rather than charging more.

Without an endpoint ID, send a query or a target URL and it suggests up to three endpoints.

upscrape_execute

Runs one endpoint, at its price, charged only when it succeeds.

JSON
{  "capability": "amazon.products.search",  "input": {"query": "wireless earbuds", "limit": 10},  "max_credits": 1,  "operation_key": "earbuds-2026-10-16"}
ArgumentWhat it does
capability, inputThe endpoint and its input.
wait, wait_msWait for the result: up to 55,000 ms, the default. wait: false or wait_ms: 0 returns the job at once.
max_creditsThe most the call may cost, in whole credits; a 0.25-credit call needs max_credits: 1.
max_credit_millisThe same ceiling in thousandths of a credit, to cap a part-credit price exactly: 250 for 0.25.
operation_key1 to 128 characters naming this one call. Send it again after a lost answer to get the same job; a new call needs a new key.
timeout_msStop the job sooner than the endpoint's own run time. It can't extend it.

A call still running when the wait ends returns its job_id; fetch it with upscrape_get_job_result.

Get results

upscrape_get_job_result

Fetches a job that took longer, or any earlier job on the account. Free.

JSON
{"job_id": "d7ef67f5-8cb8-4989-8b55-8ba67a1aab4f"}

Large results come as a preview. Page through a top-level list with offset and limit, or read the whole result in pieces with format: "json_chunk": Jobs and results shows how.

upscrape_list_jobs

Lists recent jobs, newest first, without their inputs or results. Free.

JSON
{"status": "completed", "limit": 20}

Filter by platform, capability, status, and after or before (ISO 8601 times). Up to 50 a page; follow next_cursor.

upscrape_export_result

Hands back a finished job or collection as JSON Lines or CSV, in pieces with checksums. Free. CSV cells are made safe to open in a spreadsheet. Collections shows how to put the pieces together.

Collect many pages

upscrape_collect, upscrape_get_collection, upscrape_get_collection_records and upscrape_cancel_collection gather many pages of results in the background, within a total credit limit you set. They appear when the connection allows collections. Collections explains them.

Your account

upscrape_get_account

Your balance, credits set aside for running jobs, usage this period and how many calls run at once. Free, and changes nothing. It shows account totals, which include other apps' use. Needs the account permission.

Feedback

upscrape_submit_feedback

Sends a report to the Upscrape team. Free.

JSON
{"category": "data_quality", "summary": "Prices missing for two products", "job_id": "d7ef67f5-8cb8-4989-8b55-8ba67a1aab4f"}
  • category is one of execution_failure, data_quality, documentation, missing_capability or suggestion. A failure report needs the job_id.

  • summary is 3 to 120 characters; description, optional, up to 1,600. Send IDs rather than pasting results or conversations. Obvious secrets, links and email addresses are removed.

  • Sending the same report again returns the first one. An account can send 10 reports an hour and 100 a day.

The answer gives a feedback_id. A report reaches the team, but is not a promise of a reply time.

upscrape_get_feedback_status

Says whether a report is received, in_progress or resolved, with any answer the team published. Only the app that sent the report can read it. Free.

Pinned endpoint tools

When you pin platforms or endpoints, each endpoint becomes its own tool, named after its ID with dots turned into double underscores: amazon.products.search becomes amazon__products__search. It takes the endpoint's input directly and waits for the result. To set run options, add _upscrape:

JSON
{"query": "wireless earbuds", "_upscrape": {"wait_ms": 0, "max_credits": 1, "operation_key": "earbuds-2026-10-16"}}

Several calls at once

Add batch=true to the server address and upscrape_execute_batch appears. It takes 1 to 20 items, each an endpoint and its input, with one total max_credits and an operation_key. Every input and the total price are checked before anything starts, and each item returns its own job or error. Send the same request again to get the same jobs back.

Research apps

Some research apps can only use two tools named search and fetch. Add profile=research to the server address and the connection offers just those: search looks through your own finished jobs, newest first, and fetch reads one. They never run new calls or spend credits.

Something missing or unclear? Ask the team that builds the endpoints.