v1.0.4 Now Available

AI-Powered Canvas LMS Integration

Bridge Claude AI with Canvas Learning Management System. 40+ tools for students, educators, and developers. Privacy-first, FERPA-compliant design.

40+
MCP Tools
99.7%
Token Savings
FERPA
Compliant

Everything You Need for Canvas

Comprehensive tools designed for real educational workflows, from simple queries to complex bulk operations.

🎯

Natural Language Interface

Ask questions like "What's due this week?" or "Which students haven't submitted?" and get instant answers from your Canvas data.

Code Execution API

Execute custom TypeScript for bulk operations with 99.7% token savings. Grade 90 submissions without loading them into context.

🔒

Privacy-First Design

FERPA-compliant with automatic data anonymization. Student data is protected before it reaches AI systems.

📊

Analytics & Insights

Track student performance, assignment completion rates, peer review analytics, and more with AI-powered analysis.

💬

Discussion Management

Manage discussions, post announcements, facilitate peer reviews, and grade discussion participation efficiently.

🔧

Developer Tools

Discover APIs with search_canvas_tools, execute TypeScript locally, and build custom integrations with the code API.

Built for Your Role

Whether you're a student tracking assignments or an educator managing courses, Canvas MCP has you covered.

👨‍🎓

For Students

Get AI-powered assistance with your coursework and stay organized throughout the semester.

  • Track upcoming assignments and deadlines
  • Monitor your grades across all courses
  • Manage peer review assignments
  • Access course content and discussions
  • Organize your TODO list
Student Guide →
👨‍🏫

For Educators

Enhance your teaching with powerful tools for course management and student engagement.

  • Assignment and grading management
  • Student analytics and tracking
  • Discussion facilitation
  • FERPA-compliant data handling
  • Bulk messaging and announcements
Educator Guide →
💻

For Developers

Leverage the code execution API for maximum efficiency with custom operations.

  • Execute TypeScript locally
  • 99.7% token savings on bulk ops
  • Discover APIs with search tools
  • Build custom integrations
  • Concurrent processing with rate limits
Code API Docs →

Bulk Operations, Minimal Tokens

Traditional MCP tool calls load every submission into Claude's context. Our code execution API processes data locally, returning only summaries.

Grading 90 Submissions 99.7% Reduction
1.35M
Traditional
3.5K
Code Exec
Learn More →
bulkGrade.ts
import { bulkGrade } from './canvas/grading';

await bulkGrade({
  courseIdentifier: "60366",
  assignmentId: "123",
  gradingFunction: (submission) => {
    // Analysis happens locally!
    const notebook = submission.attachments
      ?.find(f => f.filename.endsWith('.ipynb'));

    if (!notebook) return null;

    return {
      points: 100,
      comment: "Great work!"
    };
  }
});

Quick Installation

Get up and running with Canvas MCP in just a few minutes.

1

Clone & Install Dependencies

Clone the repository and set up a Python virtual environment with all dependencies.

git clone https://github.com/vishalsachdev/canvas-mcp.git
cd canvas-mcp
python3 -m venv .venv && . .venv/bin/activate
pip install -e .
2

Configure Environment

Copy the template and add your Canvas API credentials.

cp env.template .env
# Edit .env with your CANVAS_API_TOKEN and CANVAS_API_URL
3

Configure Claude Desktop

Add the server to your Claude Desktop configuration file.

{
  "mcpServers": {
    "canvas-api": {
      "command": "/path/to/canvas-mcp/.venv/bin/canvas-mcp-server"
    }
  }
}
4

Verify & Start Using

Test your connection and start interacting with Canvas through Claude.

canvas-mcp-server --test
# Then restart Claude Desktop and start chatting!

Privacy-First Design

Your data stays safe with local processing and FERPA-compliant anonymization.

🏠

Local Processing

Everything runs on your machine. No data is sent to external servers beyond Canvas API.

🔐

FERPA Compliant

Automatic student data anonymization for educators. Real names converted to anonymous IDs.

👤

Self-Only Access

Students can only access their own data through Canvas API's "self" endpoints.

🚫

No Tracking

Your Canvas usage and AI interactions remain completely private.

One-Command Workflows

Pre-built skills that combine multiple tools into powerful, repeatable workflows.

👨‍🏫

/canvas-morning-check

Educator morning course health check. Get submission rates, identify struggling students, see grade distributions, and upcoming deadlines - all in one command.

Try: "morning check for CS 101" or "how are my students doing"
👨‍🎓

/canvas-week-plan

Student weekly planner. See all due dates, submission status, current grades, and pending peer reviews across all courses - prioritized by urgency.

Try: "what's due this week" or "plan my week"

Want a Custom Skill?

Instructors: Have a repetitive workflow you'd like automated? Submit an issue describing your use case and we'll create a skill for it!

💡 Request a Skill

Works with Your Favorite Tools

Canvas MCP works with any MCP-compatible client.

🤖
Claude Desktop
Zed
🖱️
Cursor
🌊
Windsurf
➡️
Continue
💻
Replit

Ready to Transform Your Canvas Experience?

Join educators and students using AI to make Canvas more powerful and intuitive.