Skip to main content
Glama

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
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
render_exerciseA

Render a graded coding exercise as an interactive widget in the conversation.

The learner gets a lesson pane and an editor pane with Run and Submit. Submit executes your hidden tests against their code in the browser and shows a pass/fail verdict. On failure they can push their exact code and the exact error back into this conversation with one click — that is the point of this tool, so write tests whose failures are informative.

Call this when someone asks to learn, practise or be quizzed on Python, JavaScript, TypeScript or SQL. Author everything yourself: there is no curriculum behind this tool.

Rules for good exercises:

  • One concept, one answer, solvable in a few minutes.

  • 'task_md' must state exactly what is wanted: the function and signature the tests call, or for SQL which columns come back and whether row order matters.

  • 'starter_code' contains the skeleton and a placeholder, never the answer.

  • 'tests' are hidden until submission, and their form differs by language — see the field description. Test only what 'task_md' actually asked for; a test the learner could not have anticipated is a bug, not a difficulty.

  • SQL exercises also need 'seed'. The learner sees the schema, not your reference query.

  • Hints escalate: first a nudge, last one close to the answer.

When the learner is stuck or posts a failed attempt back into the chat, explain what THEIR code did wrong and point at the next hint. Do not hand over the solution on request; that is what the gated "show solution" button in the widget is for. If they insist after several genuine attempts, walk them through it rather than pasting it.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Lesson ExerciseTwo-pane graded coding exercise: lesson on the left, editor and grader on the right.

TDQS

A4.5/5.0

Scored across 1 tool

Disambiguation5/5

There is exactly one tool, so no two tools can be confused with each other. The description also clearly states the single trigger condition: learning, practicing, or being quizzed on Python, JavaScript, TypeScript, or SQL.

Naming Consistency5/5

render_exercise follows a clean verb_noun snake_case convention. With a single tool there are no inconsistent patterns or mixed naming styles to create confusion.

Tool Count3/5

A one-tool server feels thin for a name like tutorloop, but the tool is a substantial, self-contained widget that bundles exercise rendering, testing, hints, and feedback. It is borderline rather than clearly over- or under-scoped.

Completeness4/5

The tool covers the essential exercise lifecycle: presenting a task, running hidden tests, surfacing failure details, and progressively hinting. There are minor gaps around tracked progress or exercise history, but an agent can work around those through conversation.