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
Canvas MCP is a set of tools that allows your AI agents to interact with Canvas LMS and Gradescope.
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:
- Canvas API Key from
Canvas > Account > Settings > Approved Integrations > New Access Token
- 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:
- Enable Developer Mode in settings, if not already enabled
- 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