List quizzes
quiz_video_list_quizzesList quizzes owned by the authenticated user with optional pagination (page, limit).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-indexed page number. | |
| limit | No | Results per page (1–100, default 20). |
quiz_video_list_quizzesList quizzes owned by the authenticated user with optional pagination (page, limit).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 1-indexed page number. | |
| limit | No | Results per page (1–100, default 20). |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already indicates a safe read operation. The description adds important behavioral detail: the list is scoped to the authenticated user's ownership, and pagination is optional. These details go beyond the annotation without contradicting it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that conveys scope, ownership, and pagination in a front-loaded manner. Every element is purposeful with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with only two optional parameters fully described in the schema, the description is largely complete. It covers the resource, scope, and pagination. The lack of an output schema is a minor gap; the description doesn't explain return values, but this is acceptable for a straightforward list endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents both parameters (page and limit) with types, ranges, and defaults, achieving 100% coverage. The description only names the parameters and marks pagination as optional, adding minimal semantic value beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with the resource 'quizzes' and adds a crucial differentiator: 'owned by the authenticated user'. It also mentions optional pagination, which clarifies the operation's scope and distinguishes it from sibling list tools. This is clear and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage context: to list quizzes owned by the current user. While it doesn't explicitly name alternatives, the ownership scope and resource type make it obvious when to use this tool versus other list tools (e.g., list_quiz_questions). No exclusions, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Every tool targets a distinct resource and action (create/get/list/update/delete per entity). Overlapping pairs like get_render vs download_render are clearly differentiated by their purpose, and generate_quiz vs create_quiz serve different creation modes. There is no ambiguity between tools.
The vast majority of tools follow a consistent 'quiz_video_<verb>_<noun>' pattern in snake_case. The only deviation is the three discovery tools (get_api_catalog, get_llms_txt, get_openapi_spec) which omit the 'quiz_video_' prefix, though they still use a clear verb_noun structure.
With 30 tools, the server is on the heavier side and exceeds the typical 15-tool guideline. However, the count is justified by the breadth of resources covered (quizzes, questions, hooks, templates, flashcard decks, renders, music, account) and each tool has a distinct role, so the size feels appropriate for a comprehensive API surface.
The server covers full CRUD for most core resources (quizzes, templates, flashcard decks, hooks) and add/list for questions. Minor gaps include no individual question update/delete and no direct render deletion, but these are not critical and the main workflows (create → view → render → download) are fully covered.