Skip to main content
Glama
thehesiod

io.github.thehesiod/psquare

by thehesiod

edit_student

Update existing student details for name, SIS ID, or grade. Only provided fields change; class enrollment remains untouched.

Instructions

Update an existing student. Only provided fields change. Requires PS_ENABLE_WRITES.

Current values (name, SIS id, grade) are read from the edit form and preserved for any field you don't pass. Class enrollment is never touched — use add_class_students / remove_class_students / move_student_to_class.

Args: school_id: School ID student_id: Student ID (from list_students) first_name: New first name (optional) last_name: New last name (optional) student_sis_id: New SIS/external ID (optional) grade_id: New grade ID (optional; from list_grades)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
grade_idNo
last_nameNo
school_idYes
first_nameNo
student_idYes
student_sis_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

With no annotations provided, the description carries the full behavioral disclosure burden. It clearly explains that only passed fields are changed, current values are preserved for unspecified fields, and class enrollment is untouched. It also notes the required flag. This is comprehensive for a mutation tool, covering partial-update semantics and side effects.

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?

The description is well-structured: a one-line purpose statement, a behavioral paragraph, and a concise Args list. It is efficient without waste, though slightly longer than strictly necessary; every sentence contributes meaning. Front-loading the purpose and key behavioral rules is effective.

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?

Given the tool's complexity (6 params, partial update, no annotations), the description covers all necessary context: the write flag, source of IDs, alternative tools for class enrollment, and update semantics. An output schema exists, so not describing return values is acceptable. Nothing essential is missing for correct invocation.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must explain each parameter. It lists all six parameters with meaningful annotations: school_id and student_id are identified as identifiers (with student_id sourced from list_students), and optional fields are labeled 'New ... (optional)' with grade_id sourced from list_grades. This adds real semantic value beyond the raw 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?

The description opens with 'Update an existing student' which is a specific verb+resource, and immediately clarifies partial-update semantics ('Only provided fields change'). It also differentiates from sibling tools by explicitly stating 'Class enrollment is never touched' and naming the class-management alternatives, making the tool's scope clear.

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

Usage Guidelines5/5

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

The description provides explicit when-to-use and when-not-to-use guidance: it states the write flag prerequisite ('Requires PS_ENABLE_WRITES'), specifies that class enrollment is handled by other tools, and names those exact alternatives (add_class_students, remove_class_students, move_student_to_class). This gives an agent direct routing instructions.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/thehesiod/psquare-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server