canvas-mcp

canvas-mcp

3.4

If you are the rightful owner of canvas-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with Canvas LMS.

The Canvas MCP Server is designed to facilitate interaction between AI assistants and the Canvas Learning Management System (LMS). It provides a suite of tools for managing various aspects of courses, such as announcements, rubrics, assignments, modules, pages, and student data, all through the Canvas API. A key feature of this server is its focus on student data privacy, employing a privacy-first anonymization approach by default. This ensures that student names and emails are anonymized unless explicitly requested otherwise. The server supports natural language commands to toggle between anonymized and real data, making it user-friendly and adaptable to different privacy needs. Additionally, the server is built with a robust set of tools that allow for comprehensive management of course content and student interactions, making it a valuable asset for educators and administrators using Canvas LMS.

Features

  • List active courses and their details
  • Post announcements to courses
  • View course rubrics
  • Get student enrollment information
  • Access assignment details and submissions

Tools

  1. list-courses

    List all active courses for certified users, returning course name, ID and semester information

  2. post-announcement

    Announcement to a specific course, requiring course ID, title, and message

  3. list-rubrics

    List all grading criteria for a specific course, return grading criteria title, ID, and description

  4. list-students

    Get a complete list of all registered students in the course, optionally including email addresses

  5. list-assignments

    Get all assignments and their submission status in the course, optionally including student ID and submission history

  6. list-assignment-submissions

    Get all student submissions for a specific assignment, optionally including comments