Canvas MCP Server
Provides tools for interacting with the Canvas LMS API, allowing users to list courses and filter them by enrollment type (teacher, student, or TA).
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Canvas MCP Serverlist my courses where I'm a student"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Canvas MCP Server
A Model Context Protocol (MCP) server implementation for the Canvas LMS API. This server provides functionality to interact with Canvas LMS programmatically.
Features
List courses from Canvas LMS with optional enrollment type filtering
Interactive help prompts for using the tools
Related MCP server: Canvas Assignment Assistant
Prerequisites
Node.js 18 or later
A Canvas LMS instance
Canvas API access token
Cursor (for client integration)
Setup
Clone this repository
Install dependencies:
npm installSet up environment variables:
export CANVAS_BASE_URL="https://your-canvas-instance.com" export CANVAS_ACCESS_TOKEN="your-api-token"Build the project:
npm run buildStart the server:
npm start
Connecting with Cursor
To use this MCP server with Cursor:
Open Cursor's settings
Navigate to the MCP configuration section
Add a new server configuration:
{ "mcpServers": { "canvas": { "command": "npm", "args": [ "start" ], "cwd": "/path/to/mcp-server-canvas" } } }Save the configuration and restart Cursor
The Canvas tools will now be available in Cursor's MCP tools panel
Available Tools
list_courses
Lists all courses from Canvas LMS.
Parameters:
enrollment_type(optional): Filter courses by enrollment type (teacher, student, ta)
Example response:
{
"content": [
{
"type": "text",
"text": [
{
"id": 1234,
"name": "Example Course",
"code": "EX101",
"state": "available",
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2024-12-31T23:59:59Z"
}
]
}
]
}list-courses-help
An interactive prompt that provides help with using the list_courses tool.
Development
The server is built using TypeScript and the MCP SDK. To add new features:
Add new API methods to the
CanvasAPIclassRegister new tools using
server.tool()Register help prompts using
server.prompt()Build and test your changes
Troubleshooting
If you 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
Ensure the server path in Cursor's configuration is correct
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables interaction with the Canvas Learning Management System API, allowing users to manage courses, assignments, enrollments, and grades within Canvas.Last updated54122101JavaScriptMIT
- FlicenseAquality-maintenanceEnables interaction with Canvas LMS courses and assignments directly from your LLM, allowing you to retrieve, search, and summarize course information, check due dates, and access assignment details without leaving your AI assistant.Last updated4122
- AlicenseCqualityAmaintenanceLocal-first MCP server for Canvas LMS. Stdio transport, no third-party broker, token stays in ~/.canvas.env. Exposes courses, assignments, modules, announcements, grades, planner items, upcoming events, todo list, and bulk file dump as MCP tools.Last updated104MIT
- AlicenseAqualityFmaintenanceTurns Canvas LMS into a scriptable pipeline and exposes it to AI assistants via MCP for querying courses, grades, assignments, and syncing files using natural language.Last updated143MIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Create, validate, edit, export (markdown/svg/png/mermaid), and search JSON Canvas files.
MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/enkhbold470/mcp-server-canvas'
If you have feedback or need assistance with the MCP directory API, please join our Discord server