See a student subscriptions
list_student_subscriptionsPlans one student subscribed to, with status and renewal. Read only.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| studentId | Yes | The student_id from list_students. |
list_student_subscriptionsPlans one student subscribed to, with status and renewal. Read only.
| Name | Required | Description | Default |
|---|---|---|---|
| studentId | Yes | The student_id from list_students. |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the agent knows this is a safe closed-world read. The description repeats 'Read only' but also adds that results include status and renewal, which is useful context. It does not disclose pagination, return shape, or auth/rate details, but with annotations covering the safety profile, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is only two short sentences, but the first is grammatically awkward and the second ('Read only') duplicates annotations without adding new information. It is not verbose, but the wording reduces clarity rather than front-loading a precise purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool, annotations cover safety and the schema covers the sole parameter. However, there is no output schema, and the description never clearly states that it returns a list of subscription plans for the given student, leaving return expectations implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the only parameter is documented in the schema as the student_id from list_students. The description adds no parameter-specific meaning, so the baseline of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (subscription plans) and mentions status and renewal, but the verb is unclear ('Plans one student subscribed to') and it does not distinguish this tool from sibling tools like list_subscriptions or get_subscription. An agent can infer it lists a student's subscriptions from the name and studentId, but the description alone is vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternatives are given; it does not say to use this instead of list_subscriptions when scoped to an individual student. The required studentId implies per-student scope, but the description leaves comparison to siblings unstated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.