Connects agents to Canvas LMS to work with courses, assignments, grades, pages and rubrics.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add canvas-r-huijts --env CANVAS_API_TOKEN='<CANVAS_API_TOKEN>' --env CANVAS_BASE_URL='<CANVAS_BASE_URL>' -- node /path/to/canvas-mcp/build/index.js~/.codex/config.toml
[mcp_servers.canvas-r-huijts]
command = "node"
args = ["/path/to/canvas-mcp/build/index.js"]
env = { CANVAS_API_TOKEN = "<CANVAS_API_TOKEN>", CANVAS_BASE_URL = "<CANVAS_BASE_URL>" }
# codex mcp add canvas-r-huijts --env CANVAS_API_TOKEN='<CANVAS_API_TOKEN>' --env CANVAS_BASE_URL='<CANVAS_BASE_URL>' -- node /path/to/canvas-mcp/build/index.js~/.cursor/mcp.json
{
"mcpServers": {
"canvas-r-huijts": {
"command": "node",
"args": [
"/path/to/canvas-mcp/build/index.js"
],
"env": {
"CANVAS_API_TOKEN": "<CANVAS_API_TOKEN>",
"CANVAS_BASE_URL": "<CANVAS_BASE_URL>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"canvas-r-huijts": {
"type": "stdio",
"command": "node",
"args": [
"/path/to/canvas-mcp/build/index.js"
],
"env": {
"CANVAS_API_TOKEN": "<CANVAS_API_TOKEN>",
"CANVAS_BASE_URL": "<CANVAS_BASE_URL>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"canvas-r-huijts": {
"command": "node",
"args": [
"/path/to/canvas-mcp/build/index.js"
],
"env": {
"CANVAS_API_TOKEN": "<CANVAS_API_TOKEN>",
"CANVAS_BASE_URL": "<CANVAS_BASE_URL>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"canvas-r-huijts": {
"command": "node",
"args": [
"/path/to/canvas-mcp/build/index.js"
],
"env": {
"CANVAS_API_TOKEN": "<CANVAS_API_TOKEN>",
"CANVAS_BASE_URL": "<CANVAS_BASE_URL>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"canvas-r-huijts": {
"command": "node",
"args": [
"/path/to/canvas-mcp/build/index.js"
],
"env": {
"CANVAS_API_TOKEN": "<CANVAS_API_TOKEN>",
"CANVAS_BASE_URL": "<CANVAS_BASE_URL>"
}
}
}
}Environment variables
CANVAS_API_TOKENCANVAS_BASE_URL
Replace the placeholders with your own credentials and keep them out of version control.