Skip to main content
Glama

canvas_list_calendar_events

Read-only

Retrieve Canvas calendar events or assignments for selected courses and users, filtered by date range or type, to track upcoming deadlines and schedules.

Instructions

List Canvas calendar events or assignments across selected contexts (courses/users).

Input Schema

NameRequiredDescriptionDefault
typeNo
endDateNo
allEventsNo
startDateNoYYYY-MM-DD or ISO 8601.
contextCodesNoArray like ["course_123", "user_456"].

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Addedv1.2.5

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and reach are covered. The description adds that results can be either calendar events or assignments depending on scope, which is useful, but it says nothing about pagination, date-range defaults, or whether an empty contextCodes returns everything.

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 front-loaded sentence with no filler or repetition. It is appropriately terse, though for a five-parameter tool with low schema coverage the brevity leaves real gaps rather than being purely efficient.

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

Completeness2/5

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

With five optional parameters, 40% schema coverage, and no output schema, the description is too thin. An agent cannot tell how endDate interacts with startDate, what allEvents does when contextCodes is omitted, or what shape the returned list takes.

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 description coverage is only 40%: startDate and contextCodes are documented, while type (an enum), endDate, and allEvents carry no schema text. The description indirectly covers type ('events or assignments') and contextCodes ('courses/users'), but leaves endDate and allEvents unexplained, so it only partially compensates for the coverage gap.

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 gives a specific verb and resource ('List Canvas calendar events or assignments') plus the scope ('across selected contexts (courses/users)'). It is clear what the tool does, but it offers no differentiation from close siblings such as canvas_list_upcoming_events, canvas_list_planner_items, or canvas_list_assignments, all of which plausibly return overlapping data.

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?

There is no statement of when to use this tool versus the several sibling listers that also surface assignments or events. The phrase 'across selected contexts' hints that the caller must supply context, but no conditions, prerequisites, or exclusions are given.

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