Claude Canvas MCP

Claude Canvas MCP

site icon
2025.03.25 0
TypeScript学习管理系统教育工具交流协作
Claude Canvas MCP 是一个模型上下文协议(MCP)服务器,用于实现 Claude 与 Canvas LMS(学习管理系统)的交互。该服务器通过 Canvas API 提供课程管理、公告发布、作业管理、学生信息查看等功能。
View on GitHub

Overview

基本能力

产品定位

Claude Canvas MCP 是一个连接 Claude 和 Canvas LMS 的中间件,主要用于教育领域的学习管理系统交互。

核心功能

  • 课程管理:列出活动课程、获取课程详情、模块和内容
  • 作业管理:查看作业、测验和讨论,管理提交内容和成绩
  • 学生管理:查看学生注册信息
  • 公告发布:发布课程公告和评论
  • 文件管理:上传和下载文件
  • 评分管理:管理评分标准和成绩

适用场景

  • 教师通过 Claude 管理 Canvas 课程内容
  • 教师查看学生作业提交情况并评分
  • 教师发布课程公告
  • 教师上传课程资料
  • 教师查看学生名单和信息

工具列表

  1. list-courses: 列出认证用户的所有活动课程
  2. get-course: 获取特定课程的详细信息
  3. list-modules: 列出课程中的所有模块
  4. list-module-items: 列出模块中的所有项目
  5. list-assignments: 获取课程中的所有作业
  6. get-assignment: 获取作业的详细信息
  7. list-students: 获取课程中注册学生的完整列表
  8. post-announcement: 向特定课程发布公告
  9. list-submissions: 获取作业的所有学生提交
  10. get-submission: 获取特定学生的作业提交
  11. post-submission-comment: 在学生提交的作业上发布评论
  12. list-files: 列出课程中的文件
  13. upload-file: 上传文件到课程

常见问题解答

  1. 需要哪些前置条件?
  2. Node.js (v16或更高版本)
  3. Canvas API token
  4. Canvas实例URL
  5. Claude桌面应用程序

使用教程

使用依赖

  1. 确保已安装 Node.js v16 或更高版本
  2. 获取 Canvas API token
  3. 准备 Canvas 实例 URL

安装教程

  1. 克隆仓库并安装依赖:
git clone https://github.com/johnnyrobot/claude-canvas-mcp.git
cd claude-canvas-mcp
npm install
  1. 构建 TypeScript 项目:
npm run build
  1. 配置环境变量:
cp .env.example .env
nano .env

调试方式

  1. 确保 Claude Desktop 配置文件中已正确添加 Canvas MCP 服务器配置
  2. 重启 Claude Desktop 应用更改
  3. 可以通过调用各种工具命令来测试功能,例如:
node build/index.js list-courses

许可证

该项目遵循 MIT 开源许可条款。