Skip to main content
Glama

Read a lesson

read_lesson
Read-only

The Markdown body of one lesson section. Free modules always. Pro modules only when the connected Promptafire account has Pro access.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
moduleYesModule slug
sectionYesSection slug from get_module

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context about access control (free vs Pro) and the Markdown return format, going beyond the annotations without contradicting them.

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

Conciseness5/5

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

Two concise sentences: the first defines the purpose and return format, the second gives the access condition. No filler, no repetition, and the most important information is front-loaded.

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

Completeness5/5

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

For a simple read-only tool with two string parameters and no output schema, the description covers purpose, response format, and access conditions. The relationship to get_module via the section slug is also present in the schema, so no critical context is missing.

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 description coverage is 100%, with both 'module' and 'section' documented as slugs. The description doesn't add new parameter-level detail, but none is needed because the schema fully handles parameter semantics.

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 ('read') and resource ('Markdown body of one lesson section'), and scopes it precisely to a single section rather than a whole module or post. This differentiates it from siblings like get_module and read_post without needing to inspect their schemas.

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?

Provides a clear access-based usage rule: free modules are always readable, while Pro modules require a connected Promptafire account with Pro access. It does not explicitly name sibling alternatives or state when not to use it, so it stops short of a 5.

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.

TDQS

A3.8/5.0
Disambiguation3/5

Most tools are distinct, but fetch overlaps with read_lesson and read_post since both can return lesson/post markdown, and search/search_curriculum have similar scopes. The descriptions help clarify some boundaries, such as search returning ids for fetch, but an agent could still be uncertain which retrieval tool to use.

Naming Consistency4/5

Tool names mostly follow a verb_noun pattern like list_modules, read_lesson, and get_module. The main inconsistencies are the bare verbs fetch and search, plus the mixed use of get versus read for similar retrieval actions.

Tool Count5/5

Eight tools is well-scoped for a content platform covering curriculum browsing, lesson reading, blog posts, and search. Each tool has a reasonable place in the workflow without excessive redundancy.

Completeness5/5

The tool surface covers the full content lifecycle: discovering tracks/modules, listing posts, searching lessons and posts, retrieving module metadata, and reading full lesson or post markdown. Access-level handling is included, so there are no obvious dead ends for the stated purpose.

Resources