Skip to main content
Glama

Get Outcome Rollups

get_outcome_rollups
Read-only

Retrieve outcome rollups for a course, filter by students or outcomes, sort results, and aggregate to course-level statistics for mastery analysis.

Instructions

Get outcome rollups for a course, optionally aggregated or filtered by students, outcomes, and sort options.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
excludeNoOptional rollup exclusions for missing users or missing outcome results.
sort_byNoSort rollups by student name or by a specific outcome score.
user_idsNoOptional Canvas user IDs or SIS user IDs prefixed with "sis_user_id:".
aggregateNoAggregate all student rollups into a single course-level rollup.
course_idYesThe Canvas course ID.
sort_orderNoSort order to apply when sorting rollups.
outcome_idsNoOptional outcome IDs to restrict the rollups.
add_defaultsNoInclude default mastery colors and levels when Canvas supports it.
aggregate_statNoStatistic to use when aggregate="course".
include_coursesNoInclude linked course details in the response payload.
sort_outcome_idNoOutcome ID to sort by when sort_by="outcome".
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is established externally. The description adds only the optional aggregation/filtering behavior and no additional side-effect context, auth requirements, or rate-limit information; this meets the lowered bar but does not exceed it.

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?

A single front-loaded sentence with the verb and object first; every phrase adds meaning and there is no redundant or filler content.

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?

This is a fairly complex tool (11 parameters, no output schema), and the description provides only a high-level summary. It does not explain what a rollup response contains or how this relates to get_outcome_results, so an agent would need to infer return semantics from the tool name and parameter schema.

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 descriptions cover 100% of the 11 parameters, so the baseline is 3. The description's mention of filtering 'by students, outcomes, and sort options' maps loosely to user_ids/outcome_ids/sort_by but adds no information beyond the detailed schema descriptions.

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 clearly states a specific action and resource: 'Get outcome rollups for a course' and mentions optional aggregation/filtering by students, outcomes, and sort options. It is not misleading, but it does not explicitly distinguish this from closely related outcome tools like get_outcome_results or get_outcome_contributing_scores.

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 context of use is implied: this is the tool for retrieving outcome rollups with optional filters/aggregation. However, the description gives no explicit guidance about when to prefer this over related outcome tools, nor any exclusions or alternative tool recommendations.

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