Canvas Lms MCP

MCP server for Canvas LMS. Read courses, assignments, submissions, rubrics, quizzes; grade, comment, manage course content, and handle Canvas admin workflows from any AI agent. It runs locally over stdio via the published package.

People who work with canvas lms, education and instructure and want it reachable from Claude, Cursor, VS Code, or another MCP client. The project is written in TypeScript.

VERIFIED ACTIVE

LAST COMMIT 2026-09-29 · ★ 8 · #10 OF 96 MAINTAINED DESIGN · VERIFIED 2026-09-30

MIT · TypeScript servers · how we verify → /methodology

01 · Install Canvas Lms MCP

before you install - you'll need

Set CANVAS_BASE_URL, CANVAS_MCP_ISSUER, CANVAS_OAUTH_CLIENT_ID, CANVAS_OAUTH_CLIENT_SECRET, CANVAS_ENABLE_ASSIGNMENT_SUBMISSION, CANVAS_PSEUDONYMIZE_STUDENTS before connecting. CANVAS_DESTRUCTIVE_TOOLS, CANVAS_PROVENANCE_FENCING, CANVAS_ROLE are optional or environment-specific per the README.

Claude Code

claude mcp add bruchris-canvas-lms-mcp -- npx -y canvas-lms-mcp

Claude Desktop / Cursor / VS Code - add to config

{
  "mcpServers": {
    "bruchris-canvas-lms-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "canvas-lms-mcp"
      ]
    }
  }
}

Same JSON for Cursor. For VS Code, rename the top-level key from `mcpServers` to `servers`.

Using another client? Same JSON, different key

Claude Desktop · mcpServers

Cursor · mcpServers

VS Code · servers

Windsurf · mcpServers

Zed · context_servers

Cline · mcpServers

Roo Code · mcpServers

Continue · mcpServers

LibreChat · mcpServers

Gemini CLI · mcpServers

Codex CLI · mcp_servers

Full setup guides: every client.

02 · Evidence

Security posture

What to check before giving this server access to your agent - from the registry, GitHub, and our own probes. We don't score safety; we show what's verifiable.

runs as local process (stdio) - runs on your machine with your user's permissions

license MIT - declared in the repository

npm package canvas-lms-mcp - unscoped; check the name against the project README before installing

registry namespace io.github.bruchris is GitHub-verified and matches the repo owner

03 · What Canvas Lms MCP can do

Prose above is summarized from the project's README and registry record - no invented capabilities.

What you can build

An agent gets 2 documented tools across works, read & search, including Works, view_course_structure.

The 2 tools it gives your agent

Extracted from the project's README - what canvas-lms-mcp lets an agent do.

Works
- Field is absent
view_course_structure
- ui://canvas-lms-mcp/course-structure.html

Latest releases

canvas-lms-mcp-v1.30.0 · 2026-09-20

canvas-lms-mcp v1.30.0 (2026-09-20) · This release introduces a new OAuth flow that makes browser-based Canvas authentication visible to the end user's host environment - a significant improvement for integrators…

canvas-lms-mcp-v1.29.5 · 2026-09-20

This patch release shores up quiz data reliability and lays the specification groundwork for two significant upcoming capabilities. Integrators relying on get_quiz_question_responses will now receive complete…

canvas-lms-mcp-v1.29.4 · 2026-09-19

This patch release tightens up the canvas-admin-roster skill definition to prevent parsing failures that could silently break roster-related tool calls. If your integration relies on admin roster functionality…

04 · Who maintains Canvas Lms MCP

canvas-lms-mcp is maintained by bruchris. It's the only MCP server we track from this author; the repo dates to Apr 2026.

05 · Facts

category
design - ranked #10 of 96 actively-maintained design servers as of 2026-09-30.
release cadence
10+ releases in the last 90 days (latest 2026-09-20)
registry
io.github.bruchris/canvas-lms-mcp (active, first published 2026-05-21 · 34 versions)
packages
npm:canvas-lms-mcp

06 · Canvas Lms MCP FAQ

What is Canvas Lms MCP?

MCP server for Canvas LMS. Read courses, assignments, submissions, rubrics, quizzes; grade, comment, manage course content, and handle Canvas admin workflows from any AI agent. It runs locally over stdio via the published package.

Is Canvas Lms MCP still maintained?

Yes - as of 2026-09-30, its last commit was 2026-09-29 and it shipped 10+ releases in the last 90 days. We re-verify nightly.

How do I install Canvas Lms MCP?

Run `npx -y canvas-lms-mcp`. The README documents 9 environment variables (CANVAS_BASE_URL, CANVAS_MCP_ISSUER, CANVAS_OAUTH_CLIENT_ID…) to set first. Set CANVAS_BASE_URL, CANVAS_MCP_ISSUER, CANVAS_OAUTH_CLIENT_ID, CANVAS_OAUTH_CLIENT_SECRET, CANVAS_ENABLE_ASSIGNMENT_SUBMISSION, CANVAS_PSEUDONYMIZE_STUDENTS before connecting. CANVAS_DESTRUCTIVE_TOOLS, CANVAS_PROVENANCE_FENCING, CANVAS_ROLE are optional or environment-specific per the README. You can also paste the ready-made client config above.

Does Canvas Lms MCP run locally?

Yes - it's a stdio server: it runs on your machine (via npx) with your user's permissions. Your data stays local unless the server itself calls external APIs.

07 · Alternatives to Canvas Lms MCP