Canvas MCP

13 tools. 1 can modify or destroy data without limits.

1 destructive tool with no built-in limits. Policy required.

Last updated:

1 can modify or destroy data
12 read-only
13 tools total

Community server · catalogue entry verified 04/07/2026

How to control Canvas MCP ↓

What Canvas MCP exposes to your agents

Read (12) Write / Execute (0) Destructive / Financial (1)
Critical Risk

The most dangerous Canvas MCP tools

1 of Canvas MCP's 13 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control Canvas MCP

PolicyLayer is an MCP gateway — it sits between your AI agents and Canvas MCP, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "clear_cache": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Cap read operations
{
  "get_assignments_by_course_name": {
    "limits": [
      {
        "counter": "get_assignments_by_course_name_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Canvas MCP — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON CANVAS →

Instant setup, no code required.

All 13 Canvas MCP tools

READ 12 tools
Read get_assignments_by_course_name Use this tool to retrieve all assignments for a Canvas course using its name rather than ID. This tool returns Read get_cache_stats Get statistics about the current cache state for debugging purposes Read get_canvas_courses Use this tool to retrieve all available Canvas courses for the current user. This is an alias for get_courses. Read get_course_assignments Use this tool to retrieve all assignments for a specific Canvas course, with optional filtering by status. Thi Read get_courses Use this tool to retrieve all available Canvas courses for the current user. This tool returns a dictionary ma Read get_file_url Use this tool to get the direct download URL for a file stored in Canvas. This tool returns a URL string that Read get_gradescope_assignment_by_name Use this tool to find a specific Gradescope assignment by name within a course. This tool returns the assignme Read get_gradescope_assignments Use this tool to retrieve all assignments for a specific Gradescope course, including the student Read get_gradescope_course_by_name Use this tool to find a specific Gradescope course by name (partial matches supported). This tool returns the Read get_gradescope_courses Use this tool to retrieve all available Gradescope courses for the current user. This tool returns a dictionar Read get_module_items Use this tool to retrieve all items within a specific module in a Canvas course. This tool returns a list of m Read get_modules Use this tool to retrieve all modules within a specific Canvas course. This tool returns a list of module obje

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about Canvas MCP

Can an AI agent delete data through the Canvas MCP server? +

Yes. The Canvas MCP server exposes 1 destructive tools including clear_cache. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How many tools does the Canvas MCP server expose? +

13 tools across 2 categories: Destructive, Read. 12 are read-only. 1 can modify, create, or delete data.

How do I enforce a policy on Canvas MCP? +

Register the Canvas MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Canvas MCP tool call.

Deterministic rules across all 13 Canvas MCP tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Instant setup, no code required.

13 Canvas MCP tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.