testrail_list_cases
List test cases in a TestRail project, optionally scoped to a suite and/or section. Use this to discover case ids before calling testrail_get_case, or to check what already exists before creating a new case with testrail_create_case. Returns { cases: [...], paging: {...} }, where each case is a compact summary (id, title, section_id, suite_id, priority_id, type_id, refs) — call testrail_get_case for full step detail on a specific case. Results are NOT auto-paged: TestRail caps a page at 250, so always check paging.hasMore and re-call with offset=paging.nextOffset before concluding a case does not exist. Prefer scoping with sectionId/suiteId over paging the whole project.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max cases to return in this page (TestRail default 250) | |
| offset | No | Row offset for paging past the first page | |
| compact | No | Return only id + title per case instead of all 7 fields. Roughly 15x smaller — use when scanning for whether a case exists, then call testrail_get_case for detail. | |
| suiteId | No | Suite id — required for multi-suite projects, optional for single-suite | |
| projectId | Yes | TestRail project id | |
| sectionId | No | Section id — scope results to cases directly inside this section |