Skip to main content
Glama

Get course

get_course
Read-onlyIdempotent

One course with its lessons and folders in Classroom order; get_lesson reads a lesson. Returns one Classroom course: title, description, whether it is published, and its lessons in order. Folders come as kind folder, followed by their lessons. get_lesson returns a lesson's text and video. Only courses this account can open; admins also see drafts.

Input Schema

NameRequiredDescriptionDefault
groupYesGroup URL name, e.g. 'yourgroup' for skool.com/yourgroup.
course_idYescourse_id from list_courses or create_course.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety bar is covered; the description adds genuinely new behavior: exact return shape (title, description, published flag), ordering, and the quirk that folders arrive as kind 'folder' immediately followed by their lessons. The permission scoping (account-visible courses, admins see drafts) is context an agent cannot get from annotations. No pagination or not-found behavior is disclosed.

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 return shape is front-loaded, but content is duplicated: 'with its lessons and folders' in sentence one is restated by 'its lessons in order' in sentence two, and get_lesson is described twice (once for what it reads, again for text and video). Trimming those repeats would lose nothing.

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 no output schema, the description carries the burden of explaining the response and does so well, including the folder/lesson interleaving that would otherwise surprise a caller. For a two-param read tool this is close to complete; only large-course/pagination behavior and failure modes are unaddressed.

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% and both parameters (group, course_id) are fully documented in the schema, so the baseline applies. The description adds no extra syntax, format, or constraint detail about either parameter.

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+resource (retrieves one course) and immediately bounds the scope: the course plus its lessons and folders in Classroom order. It also names the natural confusion point, get_lesson, and what that sibling returns instead, so an agent can distinguish the two without opening either schema.

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?

Explicitly routes the agent to get_lesson when it wants a single lesson's text and video, and the access note ('Only courses this account can open; admins also see drafts') tells it when results may be empty or partial. It does not explicitly point at list_courses for obtaining the course_id, though the schema covers that.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.