# Canvas Mcp

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

- **Type:** MCP server
- **Install:** `agentstack add mcp-admin978-canvas-mcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [admin978](https://agentstack.voostack.com/s/admin978)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [admin978](https://github.com/admin978)
- **Source:** https://github.com/admin978/canvas-mcp
- **Website:** https://www.agente404.com

## Install

```sh
agentstack add mcp-admin978-canvas-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## 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):
```bash
pip install canvas-local-mcp
```

Or from source:
```bash
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:
```bash
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:
```bash
claude mcp add canvas-local -- canvas-local-mcp
```

Claude Desktop (`~/Library/Application Support/Claude/claude_desktop_config.json`):
```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.

```bash
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.](https://www.agente404.com) · 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.

- **Author:** [admin978](https://github.com/admin978)
- **Source:** [admin978/canvas-mcp](https://github.com/admin978/canvas-mcp)
- **License:** MIT
- **Homepage:** https://www.agente404.com

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

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-admin978-canvas-mcp
- Seller: https://agentstack.voostack.com/s/admin978
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
