Skip to main content
Glama

Fiveable for AP Teachers

Save submission feedback

save_submission_feedback
DestructiveIdempotent

Saves teacher-reviewed written feedback on one submission, overall or per section, without changing scores. Students see it once results are released, including immediately if already released. Returns previous text for restoration.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
assignmentIdYesAssignment id from list_coursework or list_submissions_to_review.
itemFeedbackNo
submissionIdYesSubmission id from list_submissions_to_review.
overallFeedbackNo

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.4/5.0
Behavior5/5

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

Annotations declare destructiveHint=true and idempotentHint=true, and the description adds critical context beyond these: it explains the side effect (students see feedback upon release), the return value ('returns previous text for restoration'), and the non-effect on scores. This is rich, non-contradictory behavioral disclosure.

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 front-loaded and earning its place: purpose, visibility semantics, and return value. No wasted words.

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?

For a mutation tool with annotations, the description covers visibility, non-scoring behavior, and return value. It lacks details on parameter constraints (e.g., max lengths, item structure) and doesn't explain error conditions, but output schema handles returns and annotations cover safety hints.

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 description coverage is 50%, with assignmentId and submissionId documented but overallFeedback and itemFeedback (including nested itemId/text) not described. The description implies overall or per-section feedback, which loosely maps to overallFeedback and itemFeedback, but adds no syntax, format, or constraints 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 a specific verb (saves) and resource (teacher-reviewed written feedback on one submission), and clarifies scope: overall or per section. It also distinguishes itself from scoring siblings like score_submission and override_essay_score by explicitly stating it does not change scores.

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 clarifies when the feedback is visible to students (once results are released, or immediately if already released) and that it doesn't change scores, which routes the agent away from scoring tools. However, it doesn't explicitly name alternative tools or state when not to use this tool.

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.