aryankeluskar
MCP Serveraryankeluskarpublic

canvas mcp

Collection of Canvas LMS and Gradescope tools for the model context protocol. Query your courses, find resources, and chat with your upcoming assignments.

Repository Info

6
Stars
3
Forks
6
Watchers
3
Issues
Python
Language
MIT License
License

About This Server

Collection of Canvas LMS and Gradescope tools for the model context protocol. Query your courses, find resources, and chat with your upcoming assignments.

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

Canvas MCP

smithery badge

Canvas MCP is a set of tools that allows your AI agents to interact with Canvas LMS and Gradescope.

!gradescope

!example

Features

  • Find relevant resources - Ability to find relevant resources for a given query in natural language!
  • Query upcoming assignments - Not only fetch upcoming assignments, but also provide its breakdown for a given course.
  • Get courses and assignments from Gradescope - Query your Gradescope courses and assignments with natural language, get submission status, and more!
  • Get courses
  • Get modules
  • Get module items
  • Get file url
  • Get calendar events
  • Get assignments
  • and so much more...

Usage

Note down the following beforehand:

  1. Canvas API Key from Canvas > Account > Settings > Approved Integrations > New Access Token
  2. Gemini API key from https://aistudio.google.com/app/apikey
  3. Gradescope Email and Password https://www.gradescope.com/

Installing via Smithery (Preferred)

To install Canvas MCP for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @aryankeluskar/canvas-mcp --client claude

Or, for Cursor IDE to use canvas-mcp with other models:

npx -y @smithery/cli install @aryankeluskar/canvas-mcp --client cursor

Or, for Windsurf:

npx -y @smithery/cli install @aryankeluskar/canvas-mcp --client windsurf

Manual Installation (ONLY for local instances)

Download the repository and run the following commands:

git clone https://github.com/aryankeluskar/canvas-mcp.git
cd canvas-mcp

# Install dependencies with uv (recommended)
pip install uv
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -r requirements.txt

# Or install with pip
pip install -r requirements.txt

Manual Configuration

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

CANVAS_API_KEY=your_canvas_api_key
GEMINI_API_KEY=your_gemini_api_key

Add the following to your mcp.json or claude_desktop_config.json file:

{
  "mcpServers": {
      "canvas": {
          "command": "uv",
          "args": [
              "--directory",
              "/Users/aryank/Developer/canvas-mcp",
              "run",
              "canvas.py"
          ]
      }
  }
}

Built by Aryan Keluskar :)

Quick Start

1

Clone the repository

git clone https://github.com/aryankeluskar/canvas-mcp
2

Install dependencies

cd canvas-mcp
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

Owneraryankeluskar
Repocanvas-mcp
LanguagePython
LicenseMIT License
Last fetched8/10/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation