The default MCP surface uses four tools to keep discovery compact and contracts exact.

## `upscrape_search_capabilities`

Searches visible capabilities by all-word free text, exact platform ID, or category. Optional `limit` defaults to 20 and is capped at 100.

```json
{
  "query": "product search",
  "platform": "amazon",
  "limit": 10
}
```

Results include capability ID, platform, name, description, category, timeout, credit cost, total matches, and whether the list was truncated.

## `upscrape_describe_capability`

Returns the exact input JSON Schema, example input, timeout, credit cost, and whether a safe example output exists.

```json
{"capability": "amazon.products.search"}
```

Always describe an unfamiliar capability before executing it. Do not infer input fields from its name.

## `upscrape_execute`

Runs one capability:

```json
{
  "capability": "amazon.products.search",
  "input": {},
  "wait": true
}
```

`wait` defaults to true. Set it to false to receive a job ID immediately. An optional positive `timeout_ms` may shorten the job deadline but cannot exceed the capability's registered timeout.

## `upscrape_get_job_result`

Retrieves a previously started account-scoped job:

```json
{"job_id": "JOB_ID"}
```

This tool is read-only and does not charge credits.

## Pinned capability tools

Pinned connections expose selected capabilities as first-class tools in addition to the four meta-tools. Dotted capability IDs become strict-client-safe names by replacing each dot with a double underscore. For example, `amazon.products.search` becomes `amazon__products__search`.
