
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...
Copy & paste โ that's it
npx -y @smithery/cli@latest mcp add aryankeluskar/canvas-mcp --client claude-codeUsage
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 Code via Smithery:
npx -y @smithery/cli@latest mcp add aryankeluskar/canvas-mcp --client claude-codeOr, for Cursor IDE to use canvas-mcp with other models:
npx -y @smithery/cli install aryankeluskar/canvas-mcp --client cursorOr, for ChatGPT:
- Enable Developer Mode in settings, if not already enabled
- Go to
ChatGPT Settings > Connectorsand click Create to add this server URL:https://canvas-mcp--aryankeluskar.run.tools
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_keyAdd 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 :)
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under ISCโ you can use, modify, and redistribute it under that license's terms.
View the full license file on GitHub โ