Canvas MCP Server
by enkhbold470
A Model Context Protocol (MCP) server implementation for the Canvas LMS API. This server provides functionality to interact with Canvas LMS programmatically.
Last updated: N/A
What is Canvas MCP Server?
This is a Model Context Protocol (MCP) server designed to interact with the Canvas LMS API. It allows users to programmatically access and manage Canvas LMS data through MCP tools.
How to use Canvas MCP Server?
To use this server, you need to clone the repository, install dependencies, set up environment variables with your Canvas LMS URL and API token, build the project, and start the server. Then, configure your MCP client (like Cursor) to connect to the server.
Key features of Canvas MCP Server
Lists courses from Canvas LMS
Filters courses by enrollment type
Provides interactive help prompts
Built with TypeScript and the MCP SDK
Use cases of Canvas MCP Server
Automating Canvas LMS tasks
Integrating Canvas LMS data with other applications
Creating custom tools for Canvas LMS users
Programmatically managing course information
FAQ from Canvas MCP Server
What are the prerequisites for running this server?
What are the prerequisites for running this server?
You need Node.js 18 or later, a Canvas LMS instance, a Canvas API access token, and Cursor (for client integration).
How do I set up the environment variables?
How do I set up the environment variables?
You need to set the CANVAS_BASE_URL and CANVAS_ACCESS_TOKEN environment variables with your Canvas LMS URL and API token respectively.
How do I connect this server to Cursor?
How do I connect this server to Cursor?
You need to configure Cursor's MCP settings with the server's command, arguments, and working directory.
What if I encounter issues?
What if I encounter issues?
Check that environment variables are set correctly, verify your Canvas API token has the necessary permissions, check Cursor's MCP server logs for any error messages, and ensure the server path in Cursor's configuration is correct.
How do I add new features?
How do I add new features?
Add new API methods to the CanvasAPI class, register new tools using server.tool(), register help prompts using server.prompt(), and then build and test your changes.