Skip to main content
Glama

canvas_discussions

Fetches Canvas course discussion topics with titles, unread status, reply counts, Beijing timestamps, and links using a course ID or name keyword.

Instructions

课程讨论主题(标题 / 未读 / 回复数 / 北京时间 / 链接)。

Input Schema

NameRequiredDescriptionDefault
courseYes课程 id 或名称关键词。

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are supplied, so the description carries the full burden, yet it says nothing about read-only behavior, permissions, pagination, or ordering (only that a Beijing-time field is returned). Listing returned fields is a small behavioral hint, but for an unannotated tool this is a significant disclosure gap.

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 fragment with no filler; the field list in parentheses is front-loaded and informative given there is no output schema. It is terse to the point of being a label rather than a sentence, but nothing is wasted.

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 enumerated return fields (title / unread / reply count / Beijing time / link) usefully describe the shape of the result. Still missing are read-only semantics, ordering, result limits, and any distinction from canvas_discussion_entries, leaving the definition only minimally adequate.

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% with a single required 'course' parameter already documented as '课程 id 或名称关键词'. The description adds no further meaning about matching behavior or ambiguity, so the baseline of 3 applies.

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

Purpose3/5

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

The description identifies the resource ('课程讨论主题' / course discussion topics) and lists the fields returned, so an agent knows roughly what it fetches. However, there is no verb (list? fetch? subscribe?) and no differentiation from the sibling canvas_discussion_entries, which an agent could easily confuse with this tool.

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 guidance on when to use this versus canvas_discussion_entries or canvas_announcements is given. The agent must infer from the name alone that this lists topics while the sibling presumably lists posts within a topic.

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