# Exam Grades and Entry

> WASSCE and BECE aggregates, KCSE mean grades, JAMB minimums and NSC pass thresholds.

- name: ai.kwekuanansi/exam-grades
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 93/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/ai.kwekuanansi%2Fexam-grades
- tools: https://api.protogrid.dev/v1/servers/ai.kwekuanansi%2Fexam-grades/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "exam-grades": {
      "type": "http",
      "url": "https://kwekuanansi.ai/mcp/exam-grades"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-3d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 93/100 (new)

### protocol: 100 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- pass `protocol.list_ttl`: tool list is cacheable (ttlMs 3600000)

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 88 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 6 of 6 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: ghana.wassce_aggregate (idempotentHint); kenya.kcse_mean_grade (idempotentHint); grades.scale (idempotentHint); …
- pass `tools.token_cost`: about 1,911 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump
- pass `tools.hidden_text`: no hidden text in tool names, descriptions, schemas or annotations

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`, `stability.new_links`: tool history recorded for 3 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 6, about 1,911 tokens to load them all
- tool set hash: f70f7c86f52f40194722b33457b8ae3b
- badge: [![protogrid quality](https://protogrid.dev/badge/ai.kwekuanansi/exam-grades.svg)](https://protogrid.dev/servers/ai.kwekuanansi/exam-grades)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://kwekuanansi.ai/mcp/exam-grades (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (6)

- `ghana.bece_aggregate`: Use this when a pupil or parent in Ghana gives BECE grades and asks for the aggregate used to place them in a senior high school. It adds the four core subjects and the two strongest other subjects, as the school placement guidelines (CSSPS) state. Do not use it to say which school a pupil will get, for WASSCE grades, or to answer exam questions.
- `ghana.wassce_aggregate`: Use this when a student in Ghana gives their WASSCE grades and asks for their aggregate, or whether the grades meet a university's general entry requirement (for example "I have English B3, Core Maths C4, Science B2, Social A1 and electives B2, B3, C5: what is my aggregate?"). It counts the core subjects each route uses and the three strongest electives, and checks the credits and the aggregate of 24 that the University of Ghana and KNUST publish. Do not use it to predict a programme's cut-off, for grades from another examination, or to answer exam questions.
- `grades.scale`: Use this when someone asks what a grade or level means, or for the whole grading scale, in WASSCE, Ghana's BECE, Kenya's KCSE or South Africa's NSC (for example "is C6 a credit?" or "what is level 4 in matric?"). Do not use it to work out an aggregate or mean grade: use the examination's own tool.
- `kenya.kcse_mean_grade`: Use this when a student in Kenya gives their KCSE subject grades and asks for their mean grade, total points, or whether they reach the minimum for a degree, diploma or certificate through KUCCPS. It counts Mathematics, the better of English and Kiswahili, and the five strongest others, as KNEC's regulations state. Do not use it for a programme's cluster points or cut-off, for grades from another examination, or to answer exam questions.
- `nigeria.admission_minimums`: Use this when a candidate in Nigeria gives a UTME score, O'level (WAEC or NECO) grades, or both, and asks whether they reach JAMB's national minimum for a university, polytechnic or college, or whether they have the O'level credits needed. Do not use it to give a university's or programme's own cut-off or post-UTME score, for another country's examinations, or to answer exam questions.
- `south_africa.nsc_results`: Use this when a learner in South Africa gives their matric (NSC) percentages and asks what achievement levels they are, whether the marks meet the thresholds for a Bachelor's, Diploma or Higher Certificate pass, or for an APS. It checks the published mark thresholds; it cannot see the subject choices the full rules also depend on, and says so. Do not use it for IEB or another examination, for a university's own admission score other than the one it names, or to answer exam questions.
