> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kalent.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# continue_qualified_search

> Authorise a new credit budget on a qualified search, or retry a failed wave, via your AI assistant.

The `continue_qualified_search` tool continues a qualified search. Use it when [`get_qualified_search_result`](/mcp/get-qualified-search-result) returns `nextAction` `continue` (authorise a new credit budget) or `retry` (retry the failed wave).

A continue is a new **call** with its own quota, `target` (`target.greens` and a credit cap `target.maxCredits`). Kalent then analyses waves on its own until this call finds that many new greens, the cap of this call, or the end of the talent pool. The assistant does not call this tool for each wave, only to authorise more spending.

* `nextAction` `continue`: a new call is opened. It looks for `target.greens` greens that this call has not found yet. Greens already returned do not count, and omitting `target` reuses the last quota.
* `nextAction` `retry`: the failed wave is retried with the remaining budget of the same call, capped by the workspace balance. If that call had already found its `target.greens`, nothing is retried: the call is closed, the tool answers `status` `can_continue`, and the next continue opens a new call.

This tool does not accept a webhook. Calls, waves, credits, and edge cases are explained on the [qualified search overview](/api-reference/qualified-search-overview).

The HTTP counterpart is [`POST /v1/search/talents/qualified/{castingId}/continue`](/api-reference/continue-qualified-search).

After a successful call, poll [`get_qualified_search_result`](/mcp/get-qualified-search-result) every 10–20 seconds while `nextAction` is `wait`.

## Input

| Parameter           | Type   | Required | Description                                                                                                                                                                                             |
| ------------------- | ------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `castingId`         | string | Yes      | Identifier of the qualified search.                                                                                                                                                                     |
| `target`            | object | No       | Quota of this call. Each field is independent: an omitted field keeps its stored value.                                                                                                                 |
| `target.greens`     | number | No       | Green talents to find during this call, from 1 to 50. Omitted: stored value kept. It is not added to greens already found.                                                                              |
| `target.maxCredits` | number | No       | Credit cap for this call only. Even integer from 2 to 300. Omitted: stored value kept. Not added to previous calls: after a start at 60, a continue at 100 may spend 100 new credits, not 160 in total. |

## Response

The tool returns JSON with:

| Field        | Type   | Description                                                        |
| ------------ | ------ | ------------------------------------------------------------------ |
| `castingId`  | string | Identifier of the qualified search                                 |
| `status`     | string | `running` when a call is accepted                                  |
| `nextAction` | string | `wait` when a call is accepted; otherwise the current `nextAction` |

Two credits are charged for each talent analysed in the new call. Talents already billed on a failed wave are not charged again on retry.

## Errors

The tool response is marked as an error when:

* There is no MCP session
* API credits are insufficient (`Insufficient API credits: {available} available, {required} required.`)
* The qualified search is not found (`Casting not found.`)
* A call is already running (`A casting run is already in progress.`)
* The talent pool is exhausted (`The talent pool for this casting is exhausted.`)

Two credits are charged per judged talent, whatever the verdict. When a call opens, Kalent reserves `min(workspace balance, target.maxCredits)`; unused reserved credits come back when each wave ends.
