πŸŽ“ Canvas LMS MCP Server πŸŽ“

by MisterCommand

310 downloads
Not rated
GitHub Website

About

MCP server for accessing the Canvas LMS for students

Details

Author
MisterCommand
Downloads
310
Categories
Other, AI

- get_courses – retrieves all courses for the current user.
- get_announcements – fetches announcements from a course after a given date.
- get_assignments – gets assignments from a course due before a specific date.
- Uses stdio transport for easy integration with MCP clients.
- Requires only a Canvas API token and base URL to connect.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name πŸŽ“ Canvas LMS MCP Server πŸŽ“
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Configure the server in your MCP client’s settings using npx -y mcp-canvas-lms and set the environment variables CANVAS_ACCESS_TOKEN (your Canvas API token) and CANVAS_BASE_URL (e.g., https://canvas.ust.hk). Once connected, invoke the provided tools (get_courses, get_announcements, get_assignments) to retrieve Canvas data.

get_courses

Get all courses for the current user from Canvas LMS

get_announcements

Get all announcements for a specific course from Canvas LMS

get_assignments

Get all assignments for a specific course from Canvas LMS

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "\ud83c\udf93 canvas lms mcp server \ud83c\udf93": {
            "canvas-mcp-server": {
                "command": "npx",
                "args": [
                    "-y",
                    "mcp-canvas-lms"
                ],
                "env": {
                    "CANVAS_ACCESS_TOKEN": "key",
                    "CANVAS_BASE_URL": "https://..."
                },
                "transportType": "stdio"
            }
        }
    }
}

McpServers

{
    "canvas-mcp-server": {
        "command": "npx",
        "args": [
            "-y",
            "mcp-canvas-lms"
        ],
        "env": {
            "CANVAS_ACCESS_TOKEN": "key",
            "CANVAS_BASE_URL": "https://..."
        },
        "transportType": "stdio"
    }
}

πŸŽ“ Canvas LMS MCP Server πŸŽ“

MCP Server for the Canvas LMS API, enabling access to Canvas LMS resources for students. πŸš€

Tools

1. get_courses πŸ“š
- Get all courses for the current user
2. get_announcements πŸ“£
- Get all announcements from a specific course, made after a specific date
3. get_assignments πŸ“
- Get all assignments from a specific course, due before a specific date

Installation

{
  "mcpServers": {
    "canvas-mcp-server": {
      "command": "npx",
      "args": ["-y", "mcp-canvas-lms"],
      "env": {
        "CANVAS_ACCESS_TOKEN": "key",
        "CANVAS_BASE_URL": "https://..."
      },
      "transportType": "stdio"
    }
  }
}

Usage

Environment Variables

- CANVAS_ACCESS_TOKEN: Canvas LMS API token
- CANVAS_BASE_URL: Base URL for the canvas API (e.g. https://canvas.ust.hk)

Create your access token at sidebar > Profile > Settings (/profile/settings) > Approved Integrations > New Access Token

You might not be able to create a new access token if your admin has disabled this setting.

Development

```bash

No reviews yet β€” be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.