Skip to main content
Glama

get_internal_totals

Read-onlyIdempotent

Retrieve internal assessment totals for each subject with component breakdown, percent of scale, and outstanding marks. Requires VTOP login.

Instructions

TOTAL internal marks for every subject, out of the 100-mark course scale (internal assessment 40 = lab/class 35 + attendance 5; CAT-I 15 + CAT-II 15 = 30; Term End Examination 30). ORDER MATTERS when reporting: give every subject with its full component breakdown FIRST, then the totals at the END. For each course: scoredSoFar (exact), percentOfScale, and outstanding - components VTOP has not published yet, since it omits them rather than showing zero. Your marks can only rise. Where the attendance component is still outstanding, attendanceForecast projects what your current attendance is worth out of 5 — remember these marks are only awarded after the last instructional day, so it is a projection, not a settled score. outstanding means no mark is published yet: usually the faculty has not entered it, which is not the same as the component being unconducted. The letter grade is awarded RELATIVELY against the class average, so the 100 total does not map directly to an S/A/B. semesterId is optional; omit for current semester. Requires login.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
refreshNoBypass the short cache and re-read the page from VTOP. Results are cached for 60 seconds so follow-up questions are instant; set this when you specifically want to know whether something has just been updated.
semesterIdNoSemester ID (e.g. 'AP2024251'). If omitted, uses the current/latest semester.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.5

TDQS

A3.9/5.0
Behavior5/5

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

Despite annotations already covering the read-only/idempotent profile, the description adds substantial behavior: it explains that VTOP omits unpublished components rather than zeroing them, that 'outstanding' does not mean unconducted, that attendanceForecast is a projection paid only after the last instructional day, that grades are relative to class average, and that login is required. This is exactly the kind of domain-specific caveat annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is dense and front-loaded on the totals concept, but the ordering directive and the inline component arithmetic (40 = 35+5, CAT-I 15 + CAT-II 15, etc.) make it longer than necessary and push operational caveats into a single run-on block. It is information-rich but not tightly structured.

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 carries the return-value burden and does so thoroughly, defining scoredSoFar, percentOfScale, outstanding, and attendanceForecast and explaining the edge cases behind them. An agent has enough to interpret the response and to call the tool correctly with no required parameters.

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 100%, so both parameters are already documented in structured form. The description restates that semesterId is optional and defaults to the current semester, which duplicates the schema rather than adding syntax or format detail. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ('TOTAL internal marks for every subject') and pins down the aggregation being performed, which separates it conceptually from raw-mark siblings like get_marks. However, it never names or explicitly differentiates itself from get_marks or get_semester_grades, so the agent must infer which sibling to prefer from context alone.

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

Usage Guidelines3/5

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

Usage is only implied: the reader learns the tool returns totals and should order output a certain way, and that semesterId may be omitted. There is no statement of when to call this versus get_marks or get_semester_grades, and no when-not conditions. The 'refresh' trigger lives in the schema, not the description.

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