Canvas MCP Server
@avarant
About Canvas MCP Server
an mcp server for interacting with canvas
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"canvas-mcp-server": {
"command": "uv",
"args": [
"pip",
"install",
"-r",
"requirements.txt",
"#",
"Assuming",
"a",
"requirements.txt",
"might",
"be",
"added",
"later"
]
}
}
}Tools
5Fetches the list of active courses for the current user.
Fetches the list of assignments for a specific course ID.
Fetches calendar events (assignments) for specified context codes (defaults to user).
Fetches upcoming calendar events (including assignments) for the user.
Fetches detailed information for a specific course ID.
Overview
What is Canvas MCP Server?
A Canvas Model Context Protocol (MCP) server implemented in Python that exposes Canvas API functionalities as MCP tools using the canvas-lms-sdk. It is intended for users who want to programmatically interact with their Canvas LMS instance via MCP-compatible clients.
How to use Canvas MCP Server?
Set the CANVAS_API_URL and CANVAS_API_KEY environment variables with your Canvas credentials, install dependencies using uv (or pip) from the required repositories, then run python main.py. The server will start and listen for MCP client connections.
Key features of Canvas MCP Server?
- Fetches active courses for the current user
- Retrieves assignments for a specific course ID
- Checks calendar due dates for specified context codes
- Lists upcoming calendar events and assignments
- Returns detailed information for a given course ID
Use cases of Canvas MCP Server?
- Get an overview of all currently active courses
- View assignments and due dates for a specific course
- Check upcoming assignment deadlines on a calendar
- Access detailed course information (e.g., syllabus, settings)
- Automate Canvas data retrieval through MCP workflows
FAQ from Canvas MCP Server
What are the prerequisites for running the server?
Python 3.8 or later, the uv package manager (or pip), and a Canvas API URL and API key from your institution.
How do I set up environment variables?
Export CANVAS_API_URL (e.g., https://<your-institution>.instructure.com) and CANVAS_API_KEY before running the server. For production, use a secure secret manager.
Which dependencies need to be installed?
The server requires canvas-lms-sdk (installed from a GitHub repository) and mcp-sdk. Install them via uv pip install or pip as shown in the README.
How do I start the server?
After setting environment variables and installing dependencies, run python main.py from the project directory.
What tools does the server currently provide?
Five tools: get_active_courses, get_assignments_for_course, get_calendar_due_dates, get_upcoming_assignments, and get_class_information.
More Other MCP servers
🪟 Windows-MCP
CursorTouchMCP Server for Computer Use in Windows
Codelf
unbugA search tool helps dev to solve the naming things problem.
Inbox Zero AI MCP
elie222The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
MaxKB
1Panel-dev🔥 MaxKB is an open-source platform for building enterprise-grade agents. 强大易用的开源企业级智能体平台。
ICSS
chokcoco不止于 CSS
Comments