Get Assessment Results
get_assessment_resultsFetch a student's recent assessment attempts with scores and dates, paginated for large histories.
Instructions
Retrieve a student's recent quiz/assessment attempts, most recent first.
Reads from Firestore (users/{studentId}/quizAttempts). Paginated since this collection grows unbounded over a student's tenure — always check has_more.
Args:
student_id (string): The student's unique identifier.
limit (number): Max results to return, 1-50 (default 20).
cursor (string, optional): Pagination cursor from a previous call's next_cursor.
Returns: JSON object with schema: { "studentId": string, "results": [ { "attemptId": string, "topic": string, "score": number, // 0-100 "completedAt": string, // ISO 8601 "attemptNumber": number } ], "hasMore": boolean, "nextCursor": string // present only if hasMore is true }
Examples:
Use when: "How did this student do on their last few quizzes?" -> default limit
Use when: "Show me everything" -> paginate using next_cursor until has_more is false
Error Handling:
Returns an empty results array (not an error) if the student has no attempts yet.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| student_id | Yes | The student's unique identifier (Firebase Auth UID / Supabase user_id — these are the same value across both systems). | |
| limit | No | Maximum number of assessment results to return (1-50, default 20). | |
| cursor | No | Pagination cursor from a previous call's next_cursor field. |