Skip to main content
Glama

ClassMarker MCP by usefulapi

Recent results for one link exam

classmarker_recent_link_exam_results
Read-only

Recent finished results for the exam of ONE link (ids from classmarker_list_groups_links_exams), oldest first, PAGED by finish time. Contains personal data: use small pages. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/links/{link_id}/tests/{test_id}/recent_results.json.

Input Schema

NameRequiredDescriptionDefault
limitNoResults per request, 1-200 (default 25; ClassMarker's own default is 200).
link_idYesThe link id.
test_idYesThe exam (test) id.
include_monitor_eventsNoInclude each result's detailed monitor_events.events list (default false: only the counts).
finished_after_timestampNoUNIX time in SECONDS: only results finished after this are returned (oldest first). Default: 14 days ago. Maximum look-back is 3 months. To page, pass next_finished_after_timestamp from the previous reply.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Beyond readOnlyHint=true, it discloses ordering (oldest first), the paging dimension (by finish time), a PII warning ('Contains personal data: use small pages'), and a hard quota ('30 requests per hour per API key'). These are exactly the operational traits an agent cannot infer from annotations.

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

Conciseness4/5

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

Dense but front-loaded: what it returns, ordering/paging, then the two warnings, then the endpoint. Nearly every clause earns its place; the endpoint restatement is the only mildly redundant element.

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?

With no output schema, the description must carry return-shape burden, and it does the important parts: ordering, cursor field name for paging, and the optional monitor_events detail. It stops short of describing the result payload fields, which is a minor gap for a personal-data read tool.

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

Parameters4/5

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

Schema coverage is already 100%, so the baseline is 3, but the description adds non-obvious semantics: cursor paging is driven by finished_after_timestamp fed from next_finished_after_timestamp in the prior reply, and there is a 3-month look-back cap noted alongside the schema's 14-day default.

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 a specific verb+resource ('Recent finished results for the exam of ONE link'), and the emphasized 'ONE link' plus the exam scope distinguishes it from the sibling group/link variants. It also pins the exact API endpoint, so an agent knows precisely what is being fetched.

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?

Routes the agent to the source of ids ('ids from classmarker_list_groups_links_exams') and gives paging guidance ('pass next_finished_after_timestamp from the previous reply'). It does not explicitly state when to prefer the group-level siblings instead, so it falls short of full when/when-not coverage.

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.