此模型上下文协议(MCP)服务器允许您在不离开您的大型语言模型(例如 Claude Desktop)的情况下与 Canvas/Instructure 课程和作业进行交互。
它允许您通过编程方式检索、搜索和总结课程及作业信息,例如检查即将到来的作业的截止日期:

列出课程
搜索作业
获取作业详情
设置以下环境变量:
CANVAS_API_TOKEN:您的 Canvas API 访问令牌(请参阅下面的说明)CANVAS_DOMAIN:您的 Canvas 机构域名(例如,canvas.youruniversity.edu)更多详情,请参阅 Canvas 提供的这些说明。
请保密您的 CANVAS_API_TOKEN。不要将其提交到版本控制中。
克隆仓库
git clone https://github.com/mbcrosier/canvas-mcp.git
cd canvas-mcp
安装依赖项。如果出现错误,请确保已安装 Node.js。
npm install
连接到 MCP 服务器
复制以下 JSON 并用适当的 {{PATH}} 值替换:
{
"mcpServers": {
"canvas": {
"command": "node",
"args": ["/绝对路径/to/canvas-mcp/src/index.ts"], // 进入 src 仓库,运行 `pwd` 并在此处输入输出
"env": {
"CANVAS_API_TOKEN": "在这里填写你的api_token",
"CANVAS_DOMAIN": "myschool.instructure.com"
}
}
}
}
对于 Claude,请将此文件保存为 claude_desktop_config.json 在您的 Claude Desktop 配置目录中:
~/Library/Application Support/Claude/claude_desktop_config.json
对于 Cursor,请将此文件保存为 mcp.json 在您的 Cursor 配置目录中:
~/.cursor/mcp.json
重启 Claude Desktop / Cursor
打开 Claude Desktop,现在您应该能看到 Canvas 作为一个可用的集成选项。
或者重启 Cursor。
list_courses:默认显示所有活动课程。使用标志显示已完成或全部课程search_assignments:搜索作业标题和描述get_assignment:检索完整的作业详情令牌无效:
域名错误:
这是一个非官方的 Canvas MCP,与 Canvas 或 Instructure 无关。我也不是专业软件工程师,这个项目是使用 Claude 快速编写的,因此请自行承担风险使用它 :)