Canvas Viewer GitHub
Install — option C

This computer only

This runs the server on your own computer, only while you are using it. There is nothing to host, no password and no bill. It works with Claude Code and other apps that can start a local program. It does not work with claude.ai in a browser or with the phone apps.

Before you start

Your Canvas address. Open Canvas and copy what’s in the address bar, for example https://yourschool.instructure.com.

A Canvas access token. In Canvas, go to Account → Settings → Approved Integrations → + New Access Token. Set the expiry date; up to 90 days is a fine choice. Copy the token right away, because Canvas only shows it once. Treat it like a password.

No password to make up here — nothing is exposed to the network.

1. Run the server

pipx install canvas-viewer-mcp   # or: uvx canvas-viewer-mcp
mkdir -p ~/.config/canvas-viewer-mcp
printf 'base_url = "https://yourschool.instructure.com"\n' > ~/.config/canvas-viewer-mcp/config.toml
install -m 600 /dev/null ~/.config/canvas-viewer-mcp/token
read -rs CANVAS_TOKEN && printf '%s' "$CANVAS_TOKEN" > ~/.config/canvas-viewer-mcp/token
canvas-probe whoami   # should print your name

The read -rs line waits for you to paste your token and keeps it out of your shell history.

2. Add it to Claude Code

claude mcp add canvas-viewer -- canvas-viewer-mcp

There is no connector to add on claude.ai and no login page — Claude Code starts the program itself when it needs it.

3. Install the skills

Skills are instructions that teach Claude how to turn the raw Canvas data into a useful answer. They are installed separately from the server.

SkillWhat you get
canvas-week-reportA short, prioritized list of what you still have to do. It shows deadlines in your local time, works out real dates for courses that were copied from an earlier term, and checks for discussion replies you still owe.
canvas-dashboardThe same information as a dashboard page, with recent announcements and a summary of your week.
git clone https://github.com/lennyitb/canvas-viewer-mcp
cp -r canvas-viewer-mcp/skills/canvas-* ~/.claude/skills/

Then ask Claude what’s due. You don’t need to mention the skills by name.

Turning it off

In Canvas, go to Account → Settings → Approved Integrations and delete the token you created. Access stops immediately, whatever else is still running.

This isn’t the right option?