This guide is a conceptual first success. The catalog response and tool input are live, so placeholders below stand for values returned by the current API rather than a claim that a particular provider call ran.

## Start safely

Give the agent the [recommended setup prompt](https://scrollport.com/docs/quickstart), complete the browser approval and call `wallet`. Confirm `available` is enough for the selected job before asking it to run.

## Discover the outcome

```json
{ "name": "discover", "arguments": { "query": "find the text of a web page" } }
```

Select a `tool_id` from the response. The provider name is provenance, not the job to search for.

## Inspect the selected tool

```json
{ "name": "inspect", "arguments": { "tool_id": "<returned tool_id>" } }
```

Read `input_schema`, `worked_example` and `common_errors`. Copy the worked input and substitute your own value without changing its shape.

## Run once

```json
{
  "name": "run",
  "arguments": {
    "tool_id": "<returned tool_id>",
    "input": { "<inspected field>": "<your value>" },
    "wait_seconds": 0
  }
}
```

If the response is still queued or running, keep the `run_id` and resume it. If it asks for approval, stop and show the human the estimate. If it asks for a connection, give the human the connection URL.

## Reconcile the wallet

Call `wallet` after the run. A successful run has `cost_final`; a failed run has released its hold and is not billed. This final read makes the money result visible rather than treating provider output as the only success signal.