Skip to main content
Glama

calculate_gpa

Read-onlyIdempotent

Compute VIT 10-point GPA, CGPA, and percentage from letter grades; project what-if CGPA with course credits or find GPA needed to reach a target CGPA.

Instructions

GPA / CGPA / percentage calculator on VIT's 10-point scale (S=10 A=9 B=8 C=7 D=6 E=5 F=0; percentage = CGPA×10). It works from the LETTER GRADES VTOP already awarded — whether those were decided by relative or absolute grading doesn't matter, the grade→point scale is the same for every course. With no arguments it reports your current CGPA, percentage, total credits, and each completed semester's GPA. Pass courses (credits + grade for each) to compute that set's GPA and your projected CGPA — for 'what-if' scenarios where you supply expected grades (the most reliable way to forecast). Pass targetCgpa (+ plannedCredits) for the GPA needed to reach that CGPA. Pass semesterId (no courses) to compute one stored semester's GPA. (To estimate grades from current MARKS, use predict_grades instead.) If the response contains NOT_AUTHENTICATED, call get_captcha then login then retry. Requires login.

Input Schema

NameRequiredDescriptionDefault
coursesNoExplicit courses (credits + expected/actual grade) to compute a GPA from and project your CGPA — use for 'what-if' grade scenarios.
semesterIdNoWhen `courses` is omitted, compute this semester's GPA from VTOP. Omit for current semester.
targetCgpaNoIf set, compute the GPA needed over `plannedCredits` to reach this CGPA.
currentCgpaNoOverride the base CGPA for projection (defaults to your real CGPA).
currentCreditsNoOverride base completed credits for projection (defaults to real).
plannedCreditsNoUpcoming-semester credits, used with `targetCgpa` (defaults to the credits in `courses`).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.5

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds genuinely useful behavior: it requires login and prescribes the exact recovery flow (get_captcha → login → retry) on NOT_AUTHENTICATED. It further explains that relative vs absolute grading is irrelevant because the grade→point mapping is fixed.

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?

Front-loaded with the core purpose and scale, followed by mode rules, so an agent gets the essentials immediately. It is dense and long, packing several parenthetical asides into one paragraph, but nearly every clause carries actionable 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?

With no output schema, the description compensates by describing return values (current CGPA, percentage, total credits, per-semester GPA) and the auth failure path. For a 6-param tool with zero required params, the coverage of modes, params, and error handling is 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 coverage is 100%, so the schema documents every parameter and the baseline is 3. The description still adds value by spelling out parameter interactions—courses drives projection, targetCgpa pairs with plannedCredits, semesterId is used only when courses is omitted—and flags courses as the most reliable forecasting path.

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 (GPA/CGPA/percentage calculator) and pins down the exact scale and formula. It explicitly distinguishes itself from the sibling predict_grades by clarifying it works from already-awarded letter grades, so an agent can tell the two apart without opening schemas.

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?

Gives explicit mode-selection rules: no args → current CGPA; courses → what-if/projection; targetCgpa+plannedCredits → required GPA; semesterId → stored semester. It also names the alternative tool (predict_grades) and the condition that selects it, so nothing is left to inference.

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