Skip to main content
Glama

canvas_folders

Read-onlyIdempotent

List personal, course, group, and subfolder contents to find Canvas files; if a course hides files, search files instead.

Instructions

List folders: your personal files (context_type user), a course's or group's folders, or the subfolders of a folder (context_type folder with its id). Many courses hide their files; use canvas_find_files then.

Input Schema

NameRequiredDescriptionDefault
rawNotrue: Canvas's unmodified JSON (UTC times, HTML).
pageNoPage to fetch: a number, or the next_page value returned by the previous call.
context_idNoId of the course, group, user or folder named by context_type.
context_typeYesWhere to look: course or group (files and folders also take user or folder).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds a genuine behavioral trait not in the annotations: many courses hide their files, meaning empty results are expected rather than an error, plus the redirect to canvas_find_files. It says nothing about pagination behavior, though the schema's page parameter covers that.

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?

Two sentences, zero filler, with the core listing capability front-loaded before the hidden-files caveat. Every clause carries information the agent needs to pick a context_type or fall back to the alternative tool.

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?

This is a simple read-only list operation with full schema coverage and no output schema to explain, and the description covers scoping, the id pairing, and the empty-result fallback. The only missing piece is any hint about result shape or how the page/raw parameters affect output, which is minor given the schema documents both.

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 100%, so every parameter is already documented in structured data, giving a baseline of 3. The description restates the meaning of the context_type values (user, course, group, folder) and notes that 'folder' pairs with an id, but this largely duplicates the enum description rather than adding syntax, defaults, or edge-case behavior.

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 opens with a specific verb and resource ('List folders') and then enumerates the three distinct scopes the tool serves: personal files, course/group folders, and subfolders of a folder. This makes the listing behavior unambiguous and implicitly separates it from the singular canvas_folder sibling, though that sibling is never named.

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

Usage Guidelines4/5

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

It maps each usage scenario directly onto a context_type value ('user' for personal files, 'folder' with an id for subfolders), which tells the agent how to select the right mode. It also names an explicit alternative — canvas_find_files — for courses that hide their files, but gives no guidance on when not to use this tool or what to do for other context types beyond the enum list.

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