Skip to main content
Glama

Get Group Discussion

get_group_discussion
Read-only

Get a single discussion topic in a group by ID, returning its title, message, posted_at, discussion_type, published state, and is_announcement, plus due/available dates via Canvas's all_dates include.

Instructions

Get a single discussion topic in a group by ID, returning its title, message, posted_at, discussion_type, published state, and is_announcement, plus due/available dates via Canvas's all_dates include. Find topic_id with list_group_discussions. Group-scoped only — use get_discussion for a topic that belongs to a course instead of a group; there is no group-scoped counterpart to post_discussion_entry, so this server cannot post a reply to a group topic yet.

Input Schema

NameRequiredDescriptionDefault
group_idYesThe Canvas group ID
topic_idYesThe Canvas discussion topic ID

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.18.15

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds real value beyond that by listing the returned fields, noting due/available dates come via Canvas's all_dates include, and disclosing that this server cannot post a reply to a group topic yet. It does not discuss permissions or error behavior, which keeps it from a 5.

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?

Three dense sentences, front-loaded with the core action and its return shape, followed by parameter sourcing and scope boundaries. Every sentence earns its place, though the first sentence is long enough to verge on a run-on.

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?

There is no output schema, so the description correctly compensates by enumerating return fields and the all_dates include. Combined with the scope boundaries and the explicit posting limitation, an agent has everything needed to select and call this tool correctly.

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

Parameters4/5

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

Schema coverage is 100%, so the two parameters are already documented and the baseline is 3. The description adds meaning beyond the schema by telling the agent where to obtain topic_id (list_group_discussions), which is genuinely useful routing information, though it says nothing extra about group_id.

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?

The description states a specific verb and resource ('Get a single discussion topic in a group by ID') and enumerates the returned fields, so the agent knows exactly what the tool produces. It also explicitly distinguishes itself from get_discussion and list_group_discussions, removing ambiguity among siblings.

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

Usage Guidelines5/5

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

It names the discovery path for topic_id ('Find topic_id with list_group_discussions'), states the scope boundary ('Group-scoped only — use get_discussion for a topic that belongs to a course'), and warns that there is no group-scoped counterpart to post_discussion_entry. When-to-use and when-not-to-use are both explicit.

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

Deploy Server

Other Tools