What is the Canvas API MCP MCP server?
MCP server exposing the Canvas LMS REST API (1,116 endpoints) for AI assistants
How to install Canvas API MCP
Copy-paste configuration for popular MCP clients.
transport: stdio
Config generated by PluginBench — verify against the source before use.Environment / auth
CANVAS_BASE_URLrequiredBase URL of your Canvas LMS instance, e.g. https://yourschool.instructure.com
CANVAS_TOKENrequiredsecretCanvas API access token (Canvas: Account > Settings > New Access Token)
CANVAS_MAX_PAGESOptional cap on the number of pages fetched per paginated Canvas API call
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"canvas-api-mcp": {
"command": "uvx",
"args": [
"canvas-api-mcp"
],
"env": {
"CANVAS_BASE_URL": "<YOUR_CANVAS_BASE_URL>",
"CANVAS_TOKEN": "<YOUR_CANVAS_TOKEN>",
"CANVAS_MAX_PAGES": "<YOUR_CANVAS_MAX_PAGES>"
}
}
}
}Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"canvas-api-mcp": {
"command": "uvx",
"args": [
"canvas-api-mcp"
],
"env": {
"CANVAS_BASE_URL": "<YOUR_CANVAS_BASE_URL>",
"CANVAS_TOKEN": "<YOUR_CANVAS_TOKEN>",
"CANVAS_MAX_PAGES": "<YOUR_CANVAS_MAX_PAGES>"
}
}
}
}Windsurf
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"canvas-api-mcp": {
"command": "uvx",
"args": [
"canvas-api-mcp"
],
"env": {
"CANVAS_BASE_URL": "<YOUR_CANVAS_BASE_URL>",
"CANVAS_TOKEN": "<YOUR_CANVAS_TOKEN>",
"CANVAS_MAX_PAGES": "<YOUR_CANVAS_MAX_PAGES>"
}
}
}
}VS Code
.vscode/mcp.json
{
"servers": {
"canvas-api-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"canvas-api-mcp"
],
"env": {
"CANVAS_BASE_URL": "<YOUR_CANVAS_BASE_URL>",
"CANVAS_TOKEN": "<YOUR_CANVAS_TOKEN>",
"CANVAS_MAX_PAGES": "<YOUR_CANVAS_MAX_PAGES>"
}
}
}
}Claude Code
claude mcp add canvas-api-mcp --env CANVAS_BASE_URL=<YOUR_CANVAS_BASE_URL> --env CANVAS_TOKEN=<YOUR_CANVAS_TOKEN> --env CANVAS_MAX_PAGES=<YOUR_CANVAS_MAX_PAGES> -- uvx canvas-api-mcpRelated MCP servers
Active
Read LinkedIn profiles, companies, jobs and messages via your own browser session
2
View repository →Python
MIT