JaeYu-Dev

Canvas MCP Connector

Community JaeYu-Dev
Updated

Canvas MCP Connector

A small, read-only Model Context Protocol server for Canvas LMS. It exposes a signed-in user's courses, upcoming work, and course assignments as tools that an MCP client can call directly.

No browser extension, dashboard, or database is required. Credentials stay in the local environment and are never written to disk.

Tools

Tool Purpose
canvas_list_courses Returns active courses for the current Canvas account.
canvas_get_upcoming Returns upcoming events and deadlines.
canvas_list_assignments Returns assignments for a course ID.

Setup

Create a Canvas access token in your LMS account, then set the following environment variables:

export CANVAS_BASE_URL="https://canvas.example.edu"
export CANVAS_ACCESS_TOKEN="your_canvas_access_token"

Install and run the server:

python -m pip install -e .
canvas-mcp

MCP client configuration

Use the following command in an MCP-compatible client configuration:

{
  "mcpServers": {
    "canvas": {
      "command": "canvas-mcp",
      "env": {
        "CANVAS_BASE_URL": "https://canvas.example.edu",
        "CANVAS_ACCESS_TOKEN": "your_canvas_access_token"
      }
    }
  }
}

The server communicates over standard input/output using JSON-RPC. It only makes GET requests to Canvas API endpoints.

Development

python -m pip install -e . pytest
python -m pytest -q

Scope

This project is intentionally narrow: it is a local data connector, not a learning-management UI or an automated submission tool. Canvas deployments may expose different API capabilities; verify your institution's policies before use.

License

MIT

MCP Server · Populars

MCP Server · New

    Bevel-Software

    hexis

    Git-backed skills, tools & context for AI agents

    Community Bevel-Software
    jonashertner

    OpenCaseLaw

    Open Swiss legal corpus + MCP server: 1M+ court decisions (1875–today), 21k laws, 10M-edge citation graph, 42 MCP tools. CC0 data, MIT code. Live at mcp.opencaselaw.ch

    Community jonashertner
    SystemCraftsman

    Strimzi Kafka CLI

    Command Line Interface for the Strimzi Kafka Operator

    Community SystemCraftsman
    DROOdotFOO

    Raxol

    Write one app, render it to a terminal, a browser, or as agent tools. The terminal for your Gundam.

    Community DROOdotFOO
    morluto

    REA: Reverse Engineer Anything

    Reverse engineer anything with agents, from app behavior down to native binaries.

    Community morluto