Skip to main content
Glama

Fiveable for AP Students

Answer the current diagnostic question

submit_diagnostic_answer
Idempotent

Saves one answer in the connected student's active Fiveable diagnostic and returns feedback plus exactly one next adaptive question. Accepts the option letter, full text, or answer id from the current diagnostic question. Handles one question per call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
answerYes
intentNoPrivacy-safe reason for the request. Use explain, quiz, notes, frq, or research; never send the student's raw prompt for analytics.
requestIdNoReuse this ID for retries of the same operation; changed input returns a conflict.
questionIdYes
sessionTokenYes

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. Changed3 schema fields changed
    • removedInput schema / properties / requestId / maxLength
      Removed value: -128
    • removedInput schema / properties / requestId / minLength
      Removed value: -8
    • changedInput schema / properties / requestId / pattern
      Previous value: -"^[\\w-]+$"New value: +"^[\\w-]{8,128}$"
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=true. The description adds useful behavioral context: it saves one answer, returns feedback plus exactly one next adaptive question, and accepts multiple answer formats. It does not contradict annotations. It could add more about side effects (e.g., whether the answer is permanently recorded or whether the diagnostic advances), but the idempotency hint and the explicit 'saves' verb cover the core behavior.

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 sentences, each carrying distinct information: what it does, what inputs it accepts, and the per-call constraint. No filler or repetition of schema details. The most important behavioral fact (saves one answer, returns feedback + next question) is front-loaded.

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?

The tool has an output schema, so return values need not be described. The description covers the core call semantics, accepted answer formats, and the one-question limit. It doesn't mention retry behavior (requestId) or the intent parameter's role, but those are documented in the schema. For a mutation-like tool with idempotency hints, this is reasonably complete.

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 description coverage is only 40%, so the description must compensate. It does: it explains that 'answer' can be an option letter, full text, or answer id, and that the tool handles one question per call. It also clarifies the 'intent' parameter's purpose indirectly by saying 'privacy-safe reason' in the schema, but the description itself doesn't elaborate on requestId or sessionToken. Still, the description adds meaningful meaning beyond the schema for the key 'answer' parameter.

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?

The description states a specific verb ('Saves'), a specific resource ('one answer in the connected student's active Fiveable diagnostic'), and the exact outcome ('returns feedback plus exactly one next adaptive question'). It also clarifies the accepted input forms and the one-question-per-call constraint, which distinguishes it from sibling tools like submit_practice_answer and check_practice_answer.

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 clearly implies when to use it: when the agent has an active diagnostic question and needs to submit an answer. It explicitly says 'Handles one question per call,' which is a usage constraint. However, it does not explicitly name alternatives or state when not to use it (e.g., use submit_practice_answer for practice questions, not diagnostics).

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.