canvas
A Model Context Protocol server to run locally and connect to a Canvas LMS
claude mcp add --transport stdio vishalsachdev-canvas-mcp npx -y vishalsachdev/canvas-mcp
How to use
The Canvas MCP Server provides an extensive set of tools for interacting with Canvas LMS via MCPClient integrations. It exposes 90+ user-facing tools organized for Students, Educators, Shared, Learning Designer, and Developer workflows, plus dedicated agent skills for automation and AI-assisted course management. You can access course data, assignments, submissions, grades, pages, modules, discussions, and more, as well as perform bulk operations and course design tasks through natural language prompts or scripted tool invocations. The server is designed to work with Claude Desktop, Cursor, Codex, Windsurf, and other agents via skills.sh, enabling automated workflows such as bulk grading, course audits, accessibility checks, and course scaffolding. To begin, install the MCP server using npx and then connect with any MCP client to issue prompts like list_assignments, get_course_details, or create_module, depending on your role and permissions.
With the agent skills integrated, you can trigger a sequence of tools through a single workflow: for example, an educator might generate a course audit using get_course_structure, then parse results with parse_ufixit_violations, and finally format a summary with format_accessibility_summary. The server also supports bulk and batch operations for large courses and offers a hosted option for quick demos without local installation.
How to install
Prerequisites:
- Node.js v14+ and npm (or a compatible Node runtime)
- Basic familiarity with MCP (Model Context Protocol) tooling
-
Install Node.js and npm from the official site or via your package manager.
-
Install the Canvas MCP Server via npx (no local installation required):
npx -y vishalsachdev/canvas-mcp
-
If you prefer a local installation pattern, you can install the MCP server package globally or as a project dependency depending on your setup, then run the server entry point as documented by the package maintainers.
-
Connect an MCP client to the server endpoint (by default the hosted or local endpoint provided by the tool) and authenticate with your Canvas credentials as required by the server configuration.
-
Optional: Review and adjust environment variables for credentials, rate limits, and Canvas API access as described in the repository's docs.
Additional notes
Tips and considerations:
- This MCP server provides 90+ tools across multiple user roles and supports several AI agent workflows via skills.sh. If you encounter rate limits, consider configuring max_concurrent as recommended (around 5 for bulk ops).
- The hosted server option is available for quick access without local installation: connect via https://mcp.illinihunt.org/mcp and provide your Canvas credentials as HTTP headers.
- Keep tools and agent skills up to date by following the repository's AGENTS.md and TOOL_MANIFEST updates.
- The server's documentation highlights that the 90+ tools include course management, page & content operations, file handling, and learning-design tooling. Use the Quick Reference section in the docs as a lookup for typical capabilities.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP