Skip to main content
Glama

nophi.sh

Training courses

list_courses
Read-onlyIdempotent

Security-awareness course catalogue grouped by theme (essentials, fraud and money, attack channels, everyday habits, industry): per course the title, description, number of lessons, duration in minutes, quiz questions and passing score; also how courses are assigned after a click, and the practice exercise. Optional filter: theme.

Input Schema

NameRequiredDescriptionDefault
themeNoCourse theme; omitted: all themes.
languageNoAnswer language: 'fr' (French) or 'en' (English).en

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the description's job is content shape — and it delivers by listing the per-course fields (title, description, lesson count, duration, quiz questions, passing score) plus the assignment-after-click behavior and practice exercise. It adds no caveats about size, pagination, or ordering of the returned catalogue, which is the remaining gap.

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?

The resource and its grouping are front-loaded, and every clause carries information about returned content. The parenthetical theme list and the trailing clauses about assignment and practice exercise make the single sentence dense and slightly run-on, but nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/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 rightly spends its words on returned fields, which makes the tool callable with confidence. However, it omits practical call details an agent would want — whether the catalogue is large, how many courses are typically returned, and what the language parameter changes — leaving it adequate rather than complete.

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 coverage is 100%, so both parameters are already documented, including the enum meanings and the language default. The description restates the theme filter but does not explain the language parameter or how theme grouping relates to the filter, so it adds little beyond the schema baseline.

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 names a specific resource (security-awareness course catalogue) and enumerates its grouping and per-course contents, so an agent knows exactly what data comes back. The verb is implicit in 'catalogue' rather than stated as 'list', and there is no explicit contrast with the nearest sibling list_simulation_templates, keeping it short of a 5.

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?

The only usage cue is 'Optional filter: theme', which implies this is the broad enumeration tool, but nothing states when to prefer it over list_simulation_templates or compare_fit. Usage is inferable from the resource name rather than spelled out.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources