Coursework state is split across two systems and neither talks to the other; putting both behind one assistant is the actual convenience. Before you install, weigh the credential asymmetry: Canvas gets a revocable access token you generate, while Gradescope takes your account password directly.
An MCP server that connects an assistant to two things students actually live in: Canvas LMS and Gradescope. It goes past listing due dates — it can find the resource relevant to a question you ask in plain language, and break down what an upcoming assignment involves for a given course.
- Relevant course resources found from a natural-language query, rather than only from a folder you already know to open
- Upcoming assignments fetched with a per-course breakdown, not just a flat due-date list
- Gradescope courses and assignments queried conversationally, including submission status
- The underlying Canvas objects reachable: courses, modules, module items, file URLs, calendar events and assignments
Two credentials, both yours to create: a Canvas API key from `Canvas > Account > Settings > Approved Integrations > New Access Token`, and your Gradescope email and password. Install through Smithery for Claude Code or Cursor with a single `npx` command, or add it in ChatGPT as a connector pointing at `https://canvas-mcp--aryankeluskar.run.tools` after enabling Developer Mode. Note that the Gradescope half takes an account password rather than a scoped token, which is a different level of trust from the Canvas key.
One command plus a key — npx -y @smithery/cli@latest mcp add aryankeluskar/canvas-mcp --client claude-code, then supply credentials
