Skip to main content
Glama

Get Course Activity Stream

get_course_activity_stream
Read-only

Retrieve a summary of recent activity in a Canvas course, with counts of events grouped by type such as submissions, discussions, and announcements, to quickly identify what needs attention.

Instructions

Get a summary of recent activity in a course. Returns counts of recent events grouped by type (submissions, discussions, announcements, etc.).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
course_idYesThe Canvas course ID
Behavior3/5

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

The readOnlyHint annotation already communicates no side effects, and the description adds that it returns counts by event type. However, it does not disclose potential limitations (e.g., date ranges, pagination, or error behavior) beyond the basic read-only nature, so it partially relies on the annotation.

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?

The description is brief, with two sentences that directly state the function and the return value. No unnecessary words or repetition; it is well-structured for a simple getter.

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

Completeness4/5

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

The description explains the return value ('counts of recent events grouped by type') which is useful given there is no output schema. It provides enough context for a consumer to understand the tool's purpose and expected result, though it does not detail the exact response structure.

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?

The single parameter 'course_id' is described in the schema as 'The Canvas course ID', which is clear and complete. The description does not add extra nuance, but given full schema coverage, the parameter semantics are well understood.

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 clearly states the action ('Get') and the resource ('a summary of recent activity in a course'), and it specifies the output type (counts grouped by type). This distinguishes it from other course-related tools like listing assignments or getting a specific assignment.

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 description indicates what the tool does but does not specify when to use it compared to alternatives (e.g., checking individual activity or using a dashboard stream). It implies a high-level overview but lacks explicit guidance on scenarios or prerequisites.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bruchris/canvas-lms-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server