Tool tree
An agent-native learning canvas for co-constructing tailor-made lessons with Codex.
Implementation
gradeNot graded
gradeNot graded
learn_get_start_briefAnswer
Read the learner-authored local lesson brief, personalization preference, and selected starter before a session exists.
View tool JSON
{
"name": "learn_get_start_brief",
"kind": "answer",
"impl": "imperative",
"description": "Read the learner-authored local lesson brief, personalization preference, and selected starter before a session exists.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}learn_get_authoring_capabilitiesAnswer
Read the shared V4 registry: content blocks, exercises, blueprints, limits, and source requirements.
View tool JSON
{
"name": "learn_get_authoring_capabilities",
"kind": "answer",
"impl": "imperative",
"description": "Read the shared V4 registry: content blocks, exercises, blueprints, limits, and source requirements.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}learn_begin_sessionAction
Required first call. Start or resume a learning session, create a progressive canvas skeleton, and return the guide plus context-discovery and canvas-only visual-output policies you must follow.
View tool JSON
{
"name": "learn_begin_session",
"kind": "act",
"impl": "imperative",
"description": "Required first call. Start or resume a learning session, create a progressive canvas skeleton, and return the guide plus context-discovery and canvas-only visual-output policies you must follow.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"topic": {
"type": "string",
"minLength": 3,
"maxLength": 240,
"description": "Lesson topic or question. Omit when briefId selects the current saved brief."
},
"goal": {
"type": "string",
"minLength": 3,
"maxLength": 500,
"description": "Concrete learning outcome. Omit to use the desired outcome from the saved brief."
},
"briefId": {
"type": "string",
"minLength": 3,
"maxLength": 200,
"description": "ID returned by learn_get_start_brief. When present, use that saved brief."
},
"blueprintId": {
"type": "string",
"minLength": 3,
"maxLength": 160,
"description": "Registered lesson blueprint ID. Defaults to the saved brief or open_topic_v1."
},
"pedagogicalMode": {
"type": "string",
"enum": [
"conceptual",
"quantitative",
"code",
"scenario",
"mixed"
],
"description": "Teaching mode for the lesson. Defaults from the selected saved brief."
},
"personalizeFromRecentTasks": {
"type": "boolean",
"description": "Allow the host to derive minimized signals from recent task summaries for learner review."
},
"hostCapabilities": {
"type": "array",
"maxItems": 32,
"description": "Capabilities available in the WebMCP host, such as webmcp or rich visual output.",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 160,
"description": "One capability identifier exposed by the host."
}
},
"contextPack": {
"type": "object",
"additionalProperties": false,
"required": [
"generatedAt",
"lookbackDays",
"inspectedTaskCount",
"signals"
],
"properties": {
"generatedAt": {
"type": "string",
"minLength": 8,
"maxLength": 80
},
"lookbackDays": {
"type": "integer",
"minimum": 1,
"maximum": 30
},
"inspectedTaskCount": {
"type": "integer",
"minimum": 0,
"maximum": 10
},
"signals": {
"type": "array",
"maxItems": 8,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"id",
"summary",
"kind",
"observedAt",
"sourceLabel"
],
"properties": {
"id": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"summary": {
"type": "string",
"minLength": 3,
"maxLength": 280
},
"kind": {
"type": "string",
"enum": [
"stated_goal",
"prior_knowledge",
"current_project",
"preference",
"accessibility",
"business_constraint"
]
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"observedAt": {
"type": "string",
"minLength": 8,
"maxLength": 80
},
"sourceLabel": {
"type": "string",
"minLength": 2,
"maxLength": 160
}
}
}
},
"topicRadar": {
"type": "array",
"maxItems": 12,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"id",
"topic",
"summary",
"retrievedAt",
"learnerRelevance",
"officialRecency",
"communityCorroboration",
"authority"
],
"properties": {
"id": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"topic": {
"type": "string",
"minLength": 2,
"maxLength": 200
},
"summary": {
"type": "string",
"minLength": 8,
"maxLength": 600
},
"officialUrl": {
"type": "string",
"minLength": 10,
"maxLength": 1000
},
"officialPublishedAt": {
"type": "string",
"minLength": 8,
"maxLength": 80
},
"retrievedAt": {
"type": "string",
"minLength": 8,
"maxLength": 80
},
"availability": {
"type": "string",
"maxLength": 400
},
"learnerRelevance": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"officialRecency": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"communityCorroboration": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"authority": {
"type": "string",
"enum": [
"official",
"community_exploration"
]
},
"communitySources": {
"type": "array",
"maxItems": 5,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"url",
"publishedAt"
],
"properties": {
"url": {
"type": "string",
"minLength": 10,
"maxLength": 1000
},
"publishedAt": {
"type": "string",
"minLength": 8,
"maxLength": 80
},
"publisher": {
"type": "string",
"minLength": 2,
"maxLength": 160
}
}
}
}
}
}
}
},
"description": "Optional minimized context pack: up to eight signals from ten summaries over 30 days. Never include prompts, code, transcripts, or task IDs."
}
}
}
}