Skip to main content
Glama

Get a practice question

get_practice_question
Read-only

Returns one original practice question with its options and no answer key. Present it to the user and let them choose before calling check_answer. Pass every id already served in exclude_ids — this server is stateless and remembers nothing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
examYesExam slug from list_exams.
domainNoOptional domain id (e.g. "d3") to drill one area. Domain ids come from list_exams.
exclude_idsNoQuestion ids already served in this session, so they are not repeated.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds important runtime context beyond the readOnlyHint annotation: the server is stateless and 'remembers nothing,' which explains why exclude_ids must be maintained by the caller. It also discloses that the question includes no answer key. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, each earning its place: what is returned, how to sequence it with check_answer, and the critical exclude_ids obligation. Front-loaded and free of filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers the essential behavioral contract for a stateless read-only tool: return value content, absence of answer key, and repeat-prevention guidance. Without an output schema, a bit more detail about the exact response shape would help, but the operation is simple enough that the description is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions already cover all three parameters at 100% coverage, so the baseline is 3. The description reinforces the purpose of exclude_ids by tying it to statelessness but does not add syntax-level detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States exactly what it does: 'Returns one original practice question with its options and no answer key.' This clearly distinguishes it from check_answer, which validates the user's choice, and list_exams, which returns exam slugs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear workflow guidance: present the question, let the user choose, then call check_answer. It also instructs the agent to pass every already-served id in exclude_ids. It does not explicitly contrast with open_study or my_progress, but the sequencing is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clear, non-overlapping job: catalog lookup, question retrieval, answer evaluation, progress reporting, and opening the study page. The descriptions actively set boundaries, such as distinguishing chat quizzing from the study page.

Naming Consistency4/5

Most names follow a verb_noun pattern (list_exams, get_practice_question, check_answer, open_study) and all use snake_case. my_progress is the one outlier, reading as a noun phrase rather than an action-oriented tool name.

Tool Count5/5

Five tools is well-scoped for an exam-practice server: catalog, question loop, progress, and study-mode entry all earn their place. There is no redundancy or obvious bloat.

Completeness4/5

The core study/quiz workflow is covered end to end: discover exam, get question, grade answer, review progress, and open the study page. Minor gaps remain, such as no explicit domain-targeted chat drilling tied to my_progress and no full-exam simulation mode.

Resources