Connects local MCP clients to Canvas LMS for courses, assignments, grades, planning, and content retrieval.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Canvas MCP.
list_coursesCallable MCP tool function
list_assignmentsCallable MCP tool function
list_modulesCallable MCP tool function
list_announcementsCallable MCP tool function
get_pageCallable MCP tool function
get_file_infoCallable MCP tool function
The admin978/canvas-mcp MCP server exposes selected Canvas LMS data through MCP tools for local AI workflows. It is aimed at students, instructors, and developers who need conversational access to course information without manually browsing each Canvas page.
The available tools cover course discovery, assignments, modules, announcements, pages, file information, grades, planner items, upcoming events, and todo items. Typical requests include finding assignments due across active courses, reviewing current grades, listing next week's events, or fetching a page such as a course syllabus. The listed interface is retrieval-oriented: the provided tools list and fetch Canvas data rather than create or update Canvas records.
A separate command-line utility, canvas-local-mcp-dump, downloads course files and related content for offline indexing. It can target all active courses or receive specific course IDs, with output written to ./canvas-dump/ by default.
The admin978/canvas-mcp MCP server runs locally and communicates with its MCP client using stdio. When a tool is invoked, the local process sends requests to the official Canvas API endpoints configured for the userβs institution. No external token broker is used in that request path.
Authentication uses a Canvas personal access token. Canvas users create this token under Account, Settings, Approved Integrations, and New Access Token. The server reads the token and the institutionβs Canvas base URL from ~/.canvas.env; the base URL should identify the institution root and omit /api/v1.
The project describes itself as alpha software for single-user use. Its API surface may change, so deployments should account for possible revisions.
Python 3.10 or newer is required. The package is published on PyPI as canvas-local-mcp, and it can also be installed from a cloned source checkout with an editable install. After installation, create ~/.canvas.env, restrict its permissions, set CANVAS_BASE_URL, and add the Canvas token as CANVAS_TOKEN.
Register the executable as an MCP server in the client configuration. For Claude Desktop, the stdio entry uses the canvas-local-mcp command. Claude Code can register the same executable with claude mcp add canvas-local -- canvas-local-mcp.
The dump utility accepts optional course IDs. Its destination can be changed with CANVAS_DUMP_DIR. Token handling guidance in the project covers file permissions, least privilege, rotation, revocation, and vulnerability reporting.
The admin978/canvas-mcp MCP server provides these tools:
list_courses for course listingslist_assignments for assignment retrievallist_modules for module data, including module items in the documented examplelist_announcements for course announcementsget_page for fetching a page from a courseget_file_info for file metadataget_grades for current grade informationplanner_items for planner dataupcoming_events for forthcoming Canvas eventstodo for todo itemsThe companion dump command supports bulk download of course files and related content for offline indexing, but it is separate from the MCP tool list.
The repository labels the project alpha and provides no warranty. It is designed for a single user, and the API surface can still change. A Canvas personal access token and institution-specific base URL are required; the supplied material does not describe OAuth support or hosted operation. The server is local-first and uses stdio rather than a remote MCP endpoint.
The README documents Claude Code and Claude Desktop registration. It also says the server works with other MCP-compatible clients, but it does not provide client-specific configuration for each one. Tests use a mocked Canvas API and do not require a token, which describes development testing rather than production authentication.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/admin978-canvas-mcp)<a href="https://allmcps.com/mcp/admin978-canvas-mcp"><img src="https://allmcps.com/api/badge/admin978-canvas-mcp?style=directory" alt="Canvas MCP on AllMCPs" /></a>