Skip to main content
Glama

课程列表

ykt_courses

List all Yuketang courses grouped by semester and return classroomId and courseId needed to look up activities, chapters, announcements, and progress.

Instructions

列出所有课程(按学期分组)。classroomId 是后续查活动、章节、公告的入口;courseId 用于查章节进度。

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "ykt_courses"
  }
}

Input Schema

NameRequiredDescriptionDefault
termNo只返回某学期,如 202601;省略返回全部
regionNostandard

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

B3.1/5.0
Behavior2/5

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

No annotations exist, so the description carries the full behavioral burden and falls short. It reveals only that results are grouped by term and exposes two ID fields; it says nothing about read-only nature, authentication, pagination, or result size, all of which matter for an unannotated list tool.

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 short sentences, front-loaded with the core action and grouping, followed by high-value navigation context. No filler, nothing to trim.

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?

Without an output schema, the description usefully names the returned groupings and key IDs, which is enough to call it for a simple 2-param list. It leaves gaps on the region parameter's meaning and on operational context (permissions, result volume), so it is adequate but not complete.

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 coverage is 50%: 'term' is documented in the schema (example 202601, omit for all), but 'region' has only an enum and default with no meaning explained anywhere. The description discusses classroomId and courseId, which are output fields rather than parameters, so it does not compensate for the undocumented region parameter.

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 a concrete verb and resource: '列出所有课程(按学期分组)' makes the operation and its grouping immediate. It also hints at downstream routing (classroomId/courseId feed activities, chapters, announcements), which separates it from siblings like ykt_activities or ykt_course_progress, though it never names those siblings.

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 note that classroomId and courseId are 'the entry point' for later queries implies this is the discovery/first-call tool, which is useful. But there is no explicit when-to-use vs alternatives statement, no prerequisite or auth note, and no exclusion (e.g. how it differs from ykt_classroom or ykt_course_progress).

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