canvas-mcp

MCP.Pizza Chef: vishalsachdev

Canvas is where many universities put coursework, and finding anything means clicking through course after course. This connects it to an assistant so you can just ask. Students can check what is due, read announcements, and pull up a syllabus; teaching staff can look at submissions and enrolments. It works with Claude, Cursor, and many other assistants. You need a Canvas access token from your own account and your institution's Canvas address.

Calendar
Files/PDF
Web/Research

Use This MCP server To

Find out what assignments are due this week Check announcements across all my courses Pull up the syllabus for one course See which students have not submitted yet Get a summary of one course's workload Find the reading for next week's class

README

Canvas MCP Server

This repository contains a Message Control Protocol (MCP) server implementation for interacting with the Canvas Learning Management System API. The server is designed to work with Claude Desktop and potentially other MCP clients.

Overview

The Canvas MCP Server provides a local interface to Canvas LMS API, allowing you to:

  • List and manage courses
  • Access assignments and submissions
  • View announcements
  • Retrieve course syllabi and modules
  • Manage users and enrollments
  • Generate course summaries

Prerequisites

Installation

  1. Clone this repository:
git clone https://github.com/vishalsachdev/canvas-mcp.git
cd canvas-mcp
  1. Create and activate a virtual environment:
python -m venv canvas-mcp
source canvas-mcp/bin/activate  # On Unix/macOS
  1. Install dependencies:
pip install -r requirements.txt

Configuration

1. Create Environment File

Create a .env file in the root directory with the following variables:

CANVAS_API_TOKEN=your_canvas_api_token_here
CANVAS_API_URL=https://canvas.youruniversity.edu/api/v1

Replace the values with:

canvas-mcp FAQ

Can I use this to see what's due without clicking through Canvas?
Yes — you can ask across all your courses at once and get a single list back.
Do I need an access token?
Yes, you generate one from your own Canvas account and supply your institution's Canvas address.
Which apps does it work with?
It is documented for Claude.ai and Claude Desktop, and works with Cursor and many other assistants.
Is it useful for teaching staff as well as students?
Yes — alongside student features it covers submissions, enrolments, and course summaries.
Can I use this to catch up after missing a week?
Yes — you can ask for announcements and assignments across a date range and get them in one go.
How hard is it to set up?
You install it and add your token, which takes a little technical comfort on the first run.