JUHE API Marketplace
aryankeluskar avatar
MCP Server

Canvas MCP - College and High School Courses

A set of tools enabling AI agents to interact with Canvas LMS, allowing users to find relevant resources, get course information, and navigate modules through natural language queries.

8
GitHub Stars
10/7/2025
Last Updated
MCP Server Configuration
1{
2 "name": "canvas",
3 "command": "npx",
4 "args": [
5 "-y",
6 "@smithery/cli",
7 "run",
8 "@aryankeluskar/canvas-mcp"
9 ]
10}
JSON10 lines

README 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. Gradescope Email and Password https://www.gradescope.com/

Installing via Smithery (Preferred)

To install Canvas MCP for Claude Desktop 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 ChatGPT:

  1. Enable Developer Mode in settings, if not already enabled
  2. Go to ChatGPT Settings > Connectors and click Create to add this server URL: https://server.smithery.ai/@aryankeluskar/canvas-mcp/mcp

Manual Configuration (ONLY for local instances)

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

SNITHERY_API_KEY=your_snithery_api_key

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

{
  "mcpServers": {
      "canvas": {
          "command": "npx",
          "args": [
              "-y",
              "@smithery/cli",
              "run",
              "@aryankeluskar/canvas-mcp"
          ]
      }
  }
}

Built by Aryan Keluskar :)

Quick Install

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source

Boost your projects with Wisdom Gate LLM API

Supporting GPT-5, Claude-4, DeepSeek v3, Gemini and more.

Enjoy a free trial and save 20%+ compared to official pricing.