Skip to main content
Glama

课程章节与进度

ykt_course_progress

Retrieve a full course chapter tree with completion status, scores, deadlines, and leaf types to monitor Yuketang course progress.

Instructions

获取课程完整章节树,含每个叶子的类型、完成度、分数与截止时间。leafType 含义:0=视频,3=推荐,4=讨论,5=考试/作业,6=作业,8=签到/课堂,19=章节作业。

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "classroomId": "<classroomId>",
      "courseId": "<courseId>"
    },
    "name": "ykt_course_progress"
  }
}

Input Schema

NameRequiredDescriptionDefault
regionNostandard
courseIdYes课程 ID(来自 ykt_courses 的 courseId)
classroomIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose the shape of the response (a chapter tree with per-leaf type, completion, score, deadline) and decodes the leafType values, which is genuinely useful. However, it says nothing about permissions, whether progress is per-student or per-classroom, pagination, or failure behavior.

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?

Two compact sentences with no filler, and the core purpose is front-loaded before the leafType legend. The enumeration is dense but earns its place given the absence of an output schema.

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?

With no output schema, the description does a reasonable job of describing return contents and the leafType codes. But it leaves two of three inputs unexplained and does not clarify scope (whose progress, whether region affects the data source), which is a meaningful gap for a 3-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33%: courseId is documented in the schema, but classroomId and region have no explanation anywhere. The description does not mention any parameter at all, and the leafType enumeration it explains is a response field, not an input, so it cannot compensate for the undocumented inputs.

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?

The description states a specific verb and resource (获取课程完整章节树) and enumerates the leaf-level data returned: type, completion, score, and deadline. That is enough to distinguish it from the course-list tool ykt_courses and the lesson-level tools, though no sibling is named explicitly.

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

Usage Guidelines3/5

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

The usage is only implied: an agent can infer that this is the tool for chapter-tree/progress lookups. There is no explicit statement of when to prefer it over ykt_lesson, ykt_score, or ykt_activities, and no prerequisites are mentioned.

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