Skip to main content
Glama

Fiveable for AP Teachers

Correct an answer key

confirm_correct_answer_key
DestructiveIdempotent

Applies the owner-bound answer-key correction preview identified by previewId and rescores affected attempts in the background, subject to explicit teacher approval. Rejects scores changed since the preview.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
previewIdYesThe previewId from the matching prepare_ tool, after the teacher said yes to that preview.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
textNoReadable tool result text for clients that consume structured output.
statusYesOperation status: completed, pending, partial, failed, unavailable, or a domain-specific outcome.

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?

Annotations already flag destructive, idempotent and open-world, but the description adds behavior they cannot express: rescoring happens in the background (asynchronous), the preview is owner-bound, and calls are rejected if scores changed since the preview (optimistic concurrency check). That is substantive disclosure beyond the structured fields.

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?

Two sentences, no filler, with the operational effect front-loaded and the rejection condition as a tight second sentence. Every clause carries distinct information.

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

Completeness5/5

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

An output schema exists, so return values need no explanation. The description covers the async execution, the approval gate, and the failure mode, which is everything an agent needs to invoke this destructive, non-idempotent-looking write correctly.

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 coverage is 100% and there is only one parameter, so the schema already documents previewId's length constraints and origin. The description reinforces the owner-binding and approval conditions but adds no format or syntax detail beyond what the schema and its description supply; baseline 3 is appropriate.

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 pair: applies the answer-key correction preview and rescores affected attempts. It also scopes the operation ('owner-bound', 'identified by previewId'), which separates it cleanly from the prepare_correct_answer_key sibling that produces the preview.

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?

The description establishes the precondition ('subject to explicit teacher approval') and ties the call to a specific previewId, which implies the prepare-then-confirm workflow. It does not explicitly name prepare_correct_answer_key as the required predecessor or state when-not-to-use, but the context 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.