Canvas MCP Server logo

Canvas MCP Server

by DMontgomery40

The Canvas MCP Server is a Model Context Protocol server designed to interact with the Canvas API. It allows users to manage courses, assignments, enrollments, and grades within the Canvas learning management system.

View on GitHub

Last updated: N/A

What is Canvas MCP Server?

The Canvas MCP Server is a Node.js application that acts as a bridge between applications (like Claude Desktop) and the Canvas API. It uses the Model Context Protocol (MCP) to provide a structured interface for managing Canvas resources.

How to use Canvas MCP Server?

To use the server, first clone the repository, install dependencies using npm install, configure environment variables (Canvas API token and domain), build the project with npm run build, and then start the server using npm start. After the server is running, you can connect to it from Claude Desktop by updating the claude_desktop_config.json file with the provided configuration and restarting Claude Desktop.

Key features of Canvas MCP Server

  • Manages courses, assignments, enrollments, and grades within Canvas.

  • Provides a structured interface for interacting with the Canvas API using MCP.

  • Includes tools for creating and updating courses and assignments.

  • Supports submitting grades and enrolling users.

  • Type safety using TypeScript.

  • Error handling with meaningful error messages.

Use cases of Canvas MCP Server

  • Integrating Canvas with other applications like Claude Desktop.

  • Automating course and assignment management tasks.

  • Programmatically submitting grades and enrolling users.

  • Building custom tools and workflows for Canvas.

FAQ from Canvas MCP Server

What is an MCP server?

MCP stands for Model Context Protocol. It's a way for applications to communicate with each other in a structured manner.

How do I obtain a Canvas API token?

You can generate an API token from your Canvas account settings under 'Account' -> 'Settings' -> 'Approved Integrations'.

What Node.js version is required?

Node.js version 18 or higher is required.

How do I troubleshoot build errors?

Check your TypeScript version using npx tsc --version and try cleaning and rebuilding the project using rm -rf build/ && npm run build.

How do I contribute to the project?

Contributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.