Skip to main content
Glama

Create lesson

create_lesson

Add a lesson with text and an optional video link to the end of an existing course. Requires admin access and publishes immediately unless set to draft.

Instructions

Add a lesson at the end of a course, with text and a video link. Admins only.

Adds a lesson page at the end of a course, as the course's Add page does: title, text and an optional video link that Skool plays above it. Uploaded videos and files are not supported. Published unless published is false; in a draft course nobody but admins sees it either way. Admins only. Runs without asking first: nobody is notified.

Input Schema

NameRequiredDescriptionDefault
bodyNoLesson text. A blank line starts a new paragraph.
groupYesGroup URL name, e.g. 'yourgroup' for skool.com/yourgroup.
titleYesLesson title.
course_idYescourse_id from list_courses or create_course.
publishedNofalse keeps it a draft. Default: true.
video_urlNoYouTube, Vimeo, Loom or Wistia link shown above the text.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=true), and the description adds real value beyond them: admin-only authorization, draft-vs-published visibility, that no one is notified, and that the call executes without confirmation. It stops short of describing the return value, and the 'runs without asking first' phrasing is useful but somewhat buried after a repeated 'Admins only'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The main behavior is front-loaded and no sentence is filler, but the definition is repetitive: 'Admins only' appears twice explicitly and a third time implicitly via the draft-course visibility clause, and the opening sentence is restated almost verbatim in the second. Trimming the duplication would make it tighter without losing information.

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?

With six parameters, no output schema, and annotations present, the description covers the essentials an agent needs: authorization, visibility defaults, side-effect (no notification), content constraints, and the requirement for a course_id. The only gap is that it never says what the call returns (e.g. a lesson id), which would matter when chaining into update_lesson.

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 every parameter is already documented, including the default for published and the accepted video providers. The description adds only marginal semantics (the video plays above the text; blank lines create paragraphs is in the schema, not the description), so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (create a lesson), its placement (at the end of a course), and the payload it accepts (title, text, optional video link). It is clearly distinguishable from the sibling update_lesson and from create_course, and it names what is not supported (uploaded videos and files).

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

Usage Guidelines4/5

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

Gives concrete preconditions and exclusions: admins only, no uploaded video/file uploads, and the effect of published=false. It does not explicitly name an alternative sibling (e.g. use update_lesson to change an existing lesson), so routing is implied rather than stated.

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