IELTS/CELPIP questions and saved practice
searchSearches public IELTS speaking topics and cue cards, CELPIP Tasks 1–8, and the signed-in learner's own saved practice and Collections. Results provide matching resource URIs and snippets for question preparation, reusable stories and past-answer review. CELPIP task filters apply to public questions; saved-task details are available in returned question snapshots. Collection field search is bounded; nextCursor and searchCoverage report continuation, partial coverage or a paused scan. Read-only lookup; spoken practice and new assessment happen in Joe Speaking. Use when the learner wants a question, a CELPIP task format, stories they have already told, saved expressions or past practice evidence. Speaking practice, recording, scoring and mock tests take place in Joe Speaking. An already returned matching URI provides the same resource identity without another search. Task filters apply to public CELPIP topics; private task identity comes from verified record references when available, otherwise the returned questionSnapshot. Collection text search also checks saved examples, context, notes and corrections through bounded, authorized resource reads. Direct SQL matches are returned first; later pages add Collection field matches without duplicates. A non-null nextCursor indicates remaining pages, including when this page has no matches. searchCoverage reports field limits and possible truncation; text beyond those limits is outside the expanded search coverage. Relevant native matches are available without an exhaustive Collection scan. searchCoverage.paused means the scan stopped early on a temporary refusal: returned matches are valid, the search is not finished, and nextCursor resumes it after a short wait. Returned question URIs support fetch for verified practiceOptions.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "search"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Question-bank-only CELPIP tag filter; normalized exact match. | |
| exam | No | Exam filter for question-bank topics and explicitly requested private records. | |
| part | No | Question-bank-only IELTS part filter. | |
| task | No | Question-bank-only CELPIP task filter. | |
| limit | No | Maximum results per page, from 1 to 20; defaults to 10. | |
| query | No | Text to match within the selected resource families; an absent or empty value browses them. | |
| cursor | No | Opaque continuation returned by this search, bound to its query and filters. | |
| dateTo | No | Private learning records on or before this ISO timestamp. In a mixed search, public question-bank topics are not date-filtered. | |
| market | No | Question-bank-only IELTS market filter. | |
| category | No | Question-bank-only IELTS category filter; CELPIP is excluded. | |
| dateFrom | No | Private learning records on or after this ISO timestamp. In a mixed search, public question-bank topics are not date-filtered. | |
| seasonId | No | Question-bank-only IELTS season filter. | |
| setNumber | No | Question-bank-only CELPIP set filter; normalized exact match. | |
| resourceTypes | No | Resource families. An absent value searches the public/private federation; with a question-bank-only filter, an absent value selects question_bank_topic. | |
| practiceFilter | No | Question-bank-only IELTS practice-state filter backed by cloud-synced progress. |