AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP verified MIT Self-run

Canvas Mcp

mcp-admin978-canvas-mcp · by admin978

Local-first Canvas LMS MCP server. Stdio transport, ~125 lines of Python.

No reviews yet
0 installs
25 views
0.0% view→install

Install

$ agentstack add mcp-admin978-canvas-mcp

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-admin978-canvas-mcp)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Canvas Mcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

canvas-mcp

Local-first MCP server for Canvas LMS. Stdio transport, no network round-trips beyond the official Canvas API.

> Status: alpha. Single-user, no warranty, API surface may still shift. File issues if it breaks.

Why

Canvas is built for instructors. As a student you get a fragmented UI, no cross-course search, and notifications that arrive late or never. This server exposes the Canvas REST API as MCP tools so you can drive the LMS from any MCP-compatible client (Claude Code, Claude Desktop, etc.).

Architecture

[client] ──stdio──> [server.py] ──https──> [Canvas API]
  • Token lives in ~/.canvas.env (chmod 600)
  • Server runs locally, no third party in the path
  • Single file, fully auditable

Tools exposed

list_courses, list_assignments, list_modules, list_announcements, get_page, get_file_info, get_grades, planner_items, upcoming_events, todo.

Setup

1. Mint a Canvas personal access token

In Canvas: Account → Settings → Approved Integrations → + New Access Token. Copy the token shown — it is not retrievable afterwards.

2. Install

From PyPI (recommended):

pip install canvas-local-mcp

Or from source:

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

Then create the env file:

curl -fsSL https://raw.githubusercontent.com/admin978/canvas-mcp/main/.canvas.env.example -o ~/.canvas.env
chmod 600 ~/.canvas.env
# edit ~/.canvas.env: set CANVAS_BASE_URL (institution root, no /api/v1)
# and paste the token into CANVAS_TOKEN

3. Register with your MCP client

Claude Code:

claude mcp add canvas-local -- canvas-local-mcp

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "canvas-local": {
      "command": "canvas-local-mcp"
    }
  }
}

Bulk dump

canvas-local-mcp-dump downloads every file the user has access to (course materials, syllabi). Useful for offline indexing.

canvas-local-mcp-dump              # all active courses
canvas-local-mcp-dump 12345 67890  # specific course IDs

Output goes to ./canvas-dump/ by default. Override with CANVAS_DUMP_DIR=/path/to/dir.

License

MIT — see LICENSE.


Built by AGENTE 404 S.L. · admin@agente404.com

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.