Skip to main content
Glama

ABS · AI Business System

Read a course

get_course
Read-only

The lessons of one course: objective, key points, practice task and knowledge check.

Input Schema

NameRequiredDescriptionDefault
langNoAnswer language: zh (Chinese) or en (English)
course_idYesCourse id from list_courses

Output Schema

NameRequiredDescriptionDefault
idYesCourse id
urlYesThe course in ABS
titleYesCourse title
lessonsYesLessons: title, objective, points, task, check, pages, url
summaryNoWhat the course covers

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description's extra value is naming the returned sub-fields, but an output schema exists, so this usefully hints at content shape without telling the agent anything the structured data does not already carry.

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

Conciseness4/5

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

A single compact sentence that front-loads the resource and then lists the payload contents. It is not padded, though as a noun phrase fragment it omits a verb and reads more like a title expansion than a full description.

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

Completeness3/5

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

For a simple two-parameter read tool with full schema coverage, complete annotations and an output schema, the description is just barely sufficient. The missing piece is routing guidance — when to reach for get_course versus list_courses or get_plan — which no structured field supplies.

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%: course_id is documented as coming from list_courses and lang is documented with its zh/en enum. The description adds nothing about either parameter, which is the expected baseline when the schema does the heavy lifting.

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

Purpose4/5

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

States the resource (one course) and enumerates its content — lessons with objective, key points, practice task and knowledge check — so an agent knows this returns a single course's instructional payload. It does not explicitly contrast with get_plan or get_source_page, but the resource noun is specific enough to distinguish it from the list_courses sibling.

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

Usage Guidelines2/5

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

No when-to-use statement, no prerequisites, and no mention of alternatives such as list_courses (which the course_id schema description implies as a prior step). Usage must be inferred entirely from the name and schema.

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.