Skip to main content
Glama

bulk_update_pages

Destructive

Update settings for multiple Canvas pages at once: publish or unpublish, set editing roles, and send update notifications. Provides exact page URLs and a course identifier.

Instructions

Update settings for multiple pages at once.

Settings only — this tool cannot rename pages or change page content. Use edit_page_content to change a page's body.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
page_urlsYesComma-separated list of page URL slugs
publishedNoTrue to publish all, False to unpublish all
editing_rolesNoOne of: teachers, students, members, public
notify_of_updateNoSave-time action, NOT a persisted setting. Asks Canvas to notify course participants about these edits. Canvas never returns the flag, so this tool cannot confirm any notification was sent. Has no effect on unpublished pages.
course_identifierYesCourse code or Canvas ID
Behavior3/5

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

Annotations already declare destructiveHint=true alerting the agent to mutating behavior.the description adds 'Settings only' scope, which helps avoid misuse. However, it doesn't explicitly warn that the update applies to ALL pages in the comma-separated list, nor does it mention any permission requirements or that changes are irreversible. With destructiveHint=true already provided, the description contributes some context but doesn't go beyond what annotations already signal.

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 short sentences, first states the core purpose, second clarifies scope and redirects to the sibling tool. No filler. Every sentence carries information.

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?

For a bulk-update tool with 5 parameters and no output schema, the description covers the scope boundary well and the schema documents all parameters. It could mention that the update applies to all listed URLs at once or warn about overwriting existing settings, but the annotation destructiveHint already signals danger. Overall, it's sufficient for an agent to know when to invoke it.

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% — every parameter has a clear description in the schema (e.g., notify_of_update explains it's save-time only and not reflected in responses). The tool description adds the overall 'settings' framing and explicitly says it cannot rename or change content, which helps clarify what the settings params (published, editing_roles) are for. However, the description doesn't add syntax or value constraints beyond the schema, so it's at baseline.

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 'Update settings for multiple pages at once' which uses a specific verb (update) with a specific resource (page settings) and clear scope (multiple pages). It explicitly distinguishes from content editing by saying 'Settings only — this tool cannot rename pages or change page content,' which differentiates it from sibling tools like edit_page_content.

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?

The description explicitly states what the tool does NOT do ('cannot rename pages or change page content') and directs the agent to 'use edit_page_content to change a page's body.' This gives clear exclusion guidance and names the alternative tool for content changes. It implies the intended use case (bulk settings updates) without needing further elaboration.

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/vishalsachdev/canvas-mcp'

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