Skip to main content
Glama
GPA Calculator MCP

GPA Calculator MCP

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
calculate_gpaA

Calculate a GPA from a list of courses with credits and grades, optionally weighted with a credit multiplier on each course, and optionally combined with an earlier GPA and credit total. The GPA for the courses you pass is the term GPA, and adding earlier work with prior_gpa and prior_credits gives the cumulative GPA. Inputs: courses (each with credits greater than 0, a grade that is a letter like "B+" or a percentage like 87, and an optional credit_multiplier greater than 0 such as 1.1 for an AP class), a scale id, and optional prior_gpa and prior_credits to fold in earlier terms. A credit_multiplier above 1 gives a course more weight in the weighted GPA, and when any course has one other than 1 the tool also returns weighted_gpa and weighted_credits. The term GPA still uses the plain credits. Pass drop_lowest to leave the lowest graded courses out of the GPA, as schools do that drop the lowest course; the dropped courses are named in dropped_courses. Pass replace_repeats to count only the last listed attempt of a course that appears more than once, for schools that replace an earlier grade when a course is retaken; the replaced attempts are named in replaced_courses. Pass prior_gpa and prior_credits together, or leave both out. Passing only one of the two is an error, so the tool says which one is missing. Alternatively, pass transcript_csv as a CSV string with columns for course name, credits, grade and optional credit multiplier; a header row is optional, the columns can be in any order, and header names like Course Title, Final Grade and Credit Hours are read as the name, grade and credits columns. When courses is not given, transcript_csv is parsed and used as the course list. In transcript_csv, a P is read as pass, NP as not pass and W as withdrawn. Those rows are left out of the GPA and named in the answer, except where the scale gives the letter points, such as P on australia-hd. Example prompt: "What's my GPA if I got an A in 3 credits, a B+ in 4 credits and a C in 3 credits?"

convert_gradeA

Convert a letter or percentage into the matching letter, percentage range and grade points on a grade scale. Inputs: grade (a letter like "B+" or a percentage like 87 or "87%") and a scale id. If the letter is not on the chosen scale, the error lists the valid letters for that scale. Example prompt: "Convert 78 percent to a letter grade on the Ontario college scale."

convert_gpa_scaleA

Convert a GPA on one grade scale to the nearest band on another, so a GPA from one country can be read as a UK class or an Australian grade. Inputs: gpa (the GPA to convert, 0 to 7 and at or below the top of from_scale), from_scale (the scale the GPA is on, default us4) and optional to_scale (the scale to convert to; leave it out to convert to both the uk-classification and australia-hd scales). The GPA is read as a share of the top grade point on its own scale, then the nearest band on the target scale is returned with its percentage range and grade points. This is a common comparison, not an official conversion, so check the target school's table. Example prompt: "I have a 3.5 GPA on the US 4.0 scale. What is that in the UK?"

needed_on_finalA

Calculate the score needed on a final exam or last assignment to reach a target course grade. Inputs: current_percent (the average on all the other work, 0 to 100), final_weight_percent (how much the final is worth, greater than 0 and at most 100) and a target. Give the target as target_percent (the course grade you want, 0 to 100), as target_letter (a letter like "B+" or a class like "2:1", whose cutoff comes from the scale table), or as both. The scale id sets the table the letter cutoff comes from. Says so when the target is already locked in or out of reach. Example prompt: "My grade is 85% and the final is worth 40% of the course. What do I need on the final to finish with a B+?"

weighted_gradeA

Combine weighted course parts into the grade so far, plus the worst and best possible finish. Inputs: parts (each with a name, a weight that is a percentage of the whole course greater than 0, and an optional score between 0 and 100; leave the score out for parts that are not marked yet). Optional target_percent sets a course grade to work out the average needed on the unmarked parts. A weight is a percentage of the whole course, so the parts are never rescaled. Parts that add up to less than 100 leave the rest of the course still to come, and weights that add up to more than 100 are an error. Example prompt: "My course is 20% quizzes, 30% labs, 50% exam. I have 85 on quizzes and 70 on labs. What's my grade so far and what's the best I can finish with?"

target_gpa_plannerA

Plan the GPA needed on upcoming credits to reach a target cumulative GPA. Inputs: current_gpa (0 to 7), credits_completed (0 or more), target_gpa (0 to 7), upcoming_credits (greater than 0) and a scale id, which sets the top grade point the scale allows. Says so when the target is already reached or would take more than one term. Example prompt: "I have a 3.1 GPA over 60 credits. What GPA do I need next semester to reach 3.4?"

plan_coursesA

Plan the grade needed in each upcoming course to reach a target cumulative GPA. Inputs: current_gpa (0 to 7), credits_completed (0 or more), target_gpa (0 to 7), courses (each with an optional name and credits greater than 0) and a scale id, which sets the top grade point the scale allows. It works out the GPA the upcoming credits need, then gives the lowest letter in each course that keeps the plan on track, assuming the other courses meet the same target. Says so when the target is already reached or would take more than one term. Example prompt: "I have a 3.4 GPA over 60 credits. What do I need in each of my four classes next semester to reach 3.5?"

list_scalesA

List the built-in grade scales with their letters, percentage ranges and grade points. Inputs: none. Example prompt: "Show me the grade scales you have built in."

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 8 tools

Disambiguation3/5

Most tools are clearly distinct (weighted_grade, calculate_gpa, need_gpa, list_scale, convert_grade), but plan_gpa and target_gpa_planner overlap heavily: the latter's output (aggregate GPA needed on upcoming credits) is essentially a subset of the former's per-course plan. The pair convert_grade vs convert_gpa_scale also sound near-identical, requiring careful reading of descriptions to tell in-scale letter/percent conversion from cross-scale GPA band mapping.

Naming Consistency4/5

All names are snake_case and mostly verb-first, but the convention is not uniform: weighted_grade and target_gpa_planner are noun/object-first while convert_gpa, calculate_gpa, list_scale, need_gpa and plan_gpa are verb-first. The mix is readable, though 'target_gpa_planner' duplicates the verb semantics of plan_gpa in a different style.

Tool Count4/5

Eight tools is well within a sensible range for a GPA/academic-planning server, and each covers a recognizable academic task. The only excess is target_gpa_planner, which largely duplicates the planning capability already in plan_gpa.

Completeness4/5

The surface covers the domain well: current grade forecasting, GPA calculation with credits/weights/repeats/drops, transcript CSV parsing, scale listing, letter/percent conversion, cross-scale conversion, needed-final and multi-term planning. Minor gaps remain, e.g. no explicit way to model retaking a course's replacement GPA or a direct percentage-from-GPA lookup outside the band conversion.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues