> ## 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.

# get_candidates

> List paginated candidates for a sourcing.

Read-only MCP tool that returns candidates for one sourcing using the same filters and ordering as the Kalent candidates table.

## Input

| Field            | Type            | Required | Description           |
| ---------------- | --------------- | -------- | --------------------- |
| `sourcingId`     | string          | yes      | Sourcing id           |
| `pageIndex`      | number          | no       | Zero-based page index |
| `pageSize`       | number          | no       | Page size (max 50)    |
| `search`         | string          | no       | Free-text search      |
| `statusHandle`   | string\[]       | no       | Status filters        |
| `location`       | string\[]       | no       | City filters          |
| `jobTitle`       | string\[]       | no       | Job title filters     |
| `currentCompany` | string\[]       | no       | Company filters       |
| `sortField`      | string          | no       | Sort field            |
| `sortOrder`      | `asc` \| `desc` | no       | Sort order            |

## Response

```json theme={null}
{
  "success": true,
  "data": {
    "candidates": [
      {
        "candidate": {
          "id": "candidate_123",
          "statusHandle": "TO_BE_CONTACTED",
          "createdAt": "2026-05-19T09:00:00.000Z",
          "sourcingId": "sourcing_123",
          "talentId": "talent_123"
        },
        "talent": {
          "id": "talent_123",
          "firstname": "Grace",
          "lastname": "Hopper",
          "jobTitle": "Software Engineer",
          "city": "Paris",
          "linkedinUrl": "https://www.linkedin.com/in/example"
        }
      }
    ],
    "pagination": {
      "pageIndex": 0,
      "pageSize": 25,
      "total": 1,
      "hasNextPage": false
    }
  }
}
```
