Skip to main content
Glama

grade-nb

Grades Colab/Jupyter notebook submissions by inspecting the notebook and its revision history, then feeds results into the standard grading flow.

Instructions

NB (Colab / Jupyter notebook) grading SUB-SKILL — the type-specific plug-in for the global grade skill. When an assignment's submission is a Colab/Drive notebook, grade dispatches HERE for the notebook + revision-history inspection, then returns to the general flow (report → self-challenge → POST). Consolidates GRADING.md Part C + GradingEngine/NbInspect.md into concrete steps. The NB grading RUNS THROUGH THE ENGINE (core.gradegraders/nb.py + nb_inspect) — this skill is the METHOD, not a standalone driver. Master is skills/grade/SKILL.md.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

With no annotations, the description carries the transparency burden. It discloses that the actual grading runs through the engine (`core.grade` → `graders/nb.py` + `nb_inspect`) and that the skill is not a standalone driver, which is key behavioral context. It doesn't mention side effects or data changes, but as a sub-skill method, this is less critical.

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 description is a concise paragraph of four sentences, all of which add value: it identifies the role, the dispatch condition, the implementation path, and the master reference. It is slightly dense with backticks and file paths, but still efficient and front-loaded with the key purpose.

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

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides sufficient context for a sub-skill: what it does, when it runs, how it executes, and where to find the master skill. It doesn't detail the 'concrete steps' but points to consolidated references, which is likely enough for the agent to follow. The empty schema and presence of an output schema mean the description doesn't need to explain return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description doesn't need to explain parameters, and it doesn't attempt to. The schema is empty, so there is no gap to compensate for.

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 clearly identifies the tool as the notebook-specific grading sub-skill for the global `grade` skill, distinguishing it from siblings like `grade` and `grade-git-program`. It specifies the resource (Colab/Jupyter notebooks) and the action (grading, inspection), though it phrases it as a 'SUB-SKILL' rather than a direct verb phrase.

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

Usage Guidelines5/5

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

Usage context is explicit: 'When an assignment's submission is a Colab/Drive notebook, `grade` dispatches HERE.' It also states that this is not a standalone driver, so the agent knows to invoke it only within the larger grade workflow. This gives clear when-to-use and when-not-to-use guidance.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Canvas-LMS-MCP/canvas-teacher-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server