generative-learning.vercel.app
Learn chess and triangles on a real board. Ask what you want to learn. Your AI agent teaches you there.
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 7 · Act 35 · Transact 0 · Score: Not yet scored
Tool inspector
add-lesson-step
Add ONE catalog item: a teaching Step or a Riddle. Writes the saved lesson only. Do not move the live playhead or board, and never jump the student to the last step while you are still generating. Fast teaching steps do not play the board; why first, then the move; student taps Play when they reach that slide. type riddle stores the puzzle on this lesson — the student solves it when they open that slide (do not wait here, do not jump there). A one-step lesson or riddle has no recap and no Back/Next. State the task only, never how to solve. Before a riddle, call how_to_offer_a_hint. After two or more teaching steps, the student sees Generating... on Next until you add-lesson-step or set-lesson-recap. Same lesson number. Never create-lesson again for the same topic. Not used for create-lesson type showme. Squares MUST be English algebraic: files a–h and ranks 1–8 (e4, f7, h5). Never transliterate squares. Words may be any language. Moves MUST use long algebraic notation (LAN) so hover can draw the arrow from the exact piece: e2-e4, e7-e5, Ng1-f3, Nb8-c6, Bf1-c4. Captures: e4xd5, Bf1xc4. Never write short SAN for a move (not 1.e4, not e5, not Nf3, not Bc4, not Qh5). That only highlights the destination, as if the piece is unknown. Bare squares (e4, f7) name a location, not a move. Castling may stay O-O / O-O-O.
Page: /chess
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
lesson |
number | yes | Catalog number from create-lesson. |
type |
string | no | step = teaching beat (title, why, what). riddle = chess puzzle/חידה: question + correct squares, then wait for a click. |
title |
string | no | Beat heading, not the lesson title. For a riddle, a short name. |
why |
string | no | Teaching steps: situation and goal before the move. Omit for riddles. |
what |
string | no | Teaching steps: concrete move(s) in long algebraic notation such as e2-e4, Ng1-f3. Omit for riddles. |
paragraphs |
array | no | Optional extra detail for teaching steps. Do not spoil a riddle here. |
moves |
array | no | Optional from:to for Play buttons on teaching steps, e.g. ["e2:e4", "e7:e5"]. |
question |
string | no | Required for type riddle. Puzzle prompt shown to the student. Task only, no spoiler. Squares MUST be English algebraic: files a–h and ranks 1–8 (e4, f7, h5). Never transliterate squares. Words may be any language. Moves MUST use long algebraic notation (LAN) so hover can draw the arrow from the exact piece: e2-e4, e7-e5, Ng1-f3, Nb8-c6, Bf1-c4. Captures: e4xd5, Bf1xc4. Never write short SAN for a move (not 1.e4, not e5, not Nf3, not Bc4, not Qh5). That only highlights the destination, as if the piece is unknown. Bare squares (e4, f7) name a location, not a move. Castling may stay O-O / O-O-O. |
correct |
array | no | Required for type riddle. Acceptable squares such as ["e5", "e4"]. |
hint |
string | no | Optional private nudge for type riddle, used only after they tap Give me a hint in chat. Never put this in question. Not shown on the chess page. Squares MUST be English algebraic: files a–h and ranks 1–8 (e4, f7, h5). Never transliterate squares. Words may be any language. Moves MUST use long algebraic notation (LAN) so hover can draw the arrow from the exact piece: e2-e4, e7-e5, Ng1-f3, Nb8-c6, Bf1-c4. Captures: e4xd5, Bf1xc4. Never write short SAN for a move (not 1.e4, not e5, not Nf3, not Bc4, not Qh5). That only highlights the destination, as if the piece is unknown. Bare squares (e4, f7) name a location, not a move. Castling may stay O-O / O-O-O. |
quizType |
string | no | How the student answers a riddle. Default click-square. |
fen |
string | no | Optional board FEN for this beat. For a riddle whose pieces are not the Goal position, pass the puzzle FEN here (set-position is frozen while a catalog lesson is on screen). Catalog only; does not move the live board. Default is the position after the previous teaching step. |
Raw JSON schema
{
"type": "object",
"properties": {
"lesson": {
"type": "number",
"description": "Catalog number from create-lesson."
},
"type": {
"type": "string",
"enum": [
"step",
"riddle"
],
"description": "step = teaching beat (title, why, what). riddle = chess puzzle/חידה: question + correct squares, then wait for a click."
},
"title": {
"type": "string",
"description": "Beat heading, not the lesson title. For a riddle, a short name."
},
"why": {
"type": "string",
"description": "Teaching steps: situation and goal before the move. Omit for riddles."
},
"what": {
"type": "string",
"description": "Teaching steps: concrete move(s) in long algebraic notation such as e2-e4, Ng1-f3. Omit for riddles."
},
"paragraphs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional extra detail for teaching steps. Do not spoil a riddle here."
},
"moves": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional from:to for Play buttons on teaching steps, e.g. [\"e2:e4\", \"e7:e5\"]."
},
"question": {
"type": "string",
"description": "Required for type riddle. Puzzle prompt shown to the student. Task only, no spoiler. Squares MUST be English algebraic: files a–h and ranks 1–8 (e4, f7, h5). Never transliterate squares. Words may be any language. Moves MUST use long algebraic notation (LAN) so hover can draw the arrow from the exact piece: e2-e4, e7-e5, Ng1-f3, Nb8-c6, Bf1-c4. Captures: e4xd5, Bf1xc4. Never write short SAN for a move (not 1.e4, not e5, not Nf3, not Bc4, not Qh5). That only highlights the destination, as if the piece is unknown. Bare squares (e4, f7) name a location, not a move. Castling may stay O-O / O-O-O."
},
"correct": {
"type": "array",
"items": {
"type": "string"
},
"description": "Required for type riddle. Acceptable squares such as [\"e5\", \"e4\"]."
},
"hint": {
"type": "string",
"description": "Optional private nudge for type riddle, used only after they tap Give me a hint in chat. Never put this in question. Not shown on the chess page. Squares MUST be English algebraic: files a–h and ranks 1–8 (e4, f7, h5). Never transliterate squares. Words may be any language. Moves MUST use long algebraic notation (LAN) so hover can draw the arrow from the exact piece: e2-e4, e7-e5, Ng1-f3, Nb8-c6, Bf1-c4. Captures: e4xd5, Bf1xc4. Never write short SAN for a move (not 1.e4, not e5, not Nf3, not Bc4, not Qh5). That only highlights the destination, as if the piece is unknown. Bare squares (e4, f7) name a location, not a move. Castling may stay O-O / O-O-O."
},
"quizType": {
"type": "string",
"enum": [
"click-square",
"click-piece",
"choose-move"
],
"description": "How the student answers a riddle. Default click-square."
},
"fen": {
"type": "string",
"description": "Optional board FEN for this beat. For a riddle whose pieces are not the Goal position, pass the puzzle FEN here (set-position is frozen while a catalog lesson is on screen). Catalog only; does not move the live board. Default is the position after the previous teaching step."
}
},
"required": [
"lesson"
]
}
Similar websites
pocketgull.app
Pocket Gull is a real-time clinical AI consult engine powered by Google Gemini. Features 10D multi-paradigm strategy, FHIR R4 export & 3D spatial anatomy.
webmcp-six-lac.vercel.app
AI Navigation Layer: Model Context Protocol (MCP) Semantic DOM integration for intelligent, safe, and observable web navigation.
ghqsandbox.net
Interactive math and physics tools an AI agent can drive directly through WebMCP.
app.formative.com
Formative classroom assessment and learning platform