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.
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
- Python 3.x
- Virtual environment (venv)
- Canvas API Token
- Canvas API URL (e.g., https://canvas.illinois.edu/api/v1)
- Clone this repository:
git clone https://github.com/vishalsachdev/canvas-mcp.git
cd canvas-mcp- Create and activate a virtual environment:
python -m venv canvas-mcp
source canvas-mcp/bin/activate # On Unix/macOS- Install dependencies:
pip install -r requirements.txtCreate 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:
- Your Canvas API Token (How to get your Canvas API token)
- Your university's Canvas API URL