关于 canvas-course-qc
canvas-course-qc 是面向学习设计人员的 Canvas 课程质量检查技能,可检查结构、内容、发布状态和完整性,并按优先级整理问题。适合在课程开放给学生前或重大更新后使用。
主要功能
- 01检查模块结构与命名
- 02核查作业日期和说明
- 03检查发布状态与首页
- 04比较模块内容完整性
- 05按优先级生成问题报告
适用场景
- 01开学前检查课程准备情况
- 02查找缺少截止日期的作业
- 03发现未发布模块或页面
- 04比较各模块的内容差异
MCP 相关
需要连接 Canvas MCP 服务,并调用课程结构、作业、页面及评分标准等工具收集检查数据;可在用户确认后更新发布状态。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ vishalsachdev/ canvas-mcp --skill canvas-course-qc安装后在 Claude Code 中输入/canvas-course-qc确认已加载。
详细介绍
Canvas Course QC
供教学设计师确认 Canvas 课程是否已准备好供学生使用的自动质量检查清单。检查课程结构、内容、发布状态和完整性,然后按优先级报告问题。
前提条件
- Canvas MCP 服务必须正在运行并已连接。
- 已通过身份验证的用户必须在目标课程中具有讲师、助教或设计师角色。
- 最好在学期开始前或向学生发布课程前运行。
步骤
1. 确定目标课程
询问用户要对哪门课程进行质量检查。接受课程代码、Canvas ID 或课程名称。
如果未指定,请提示:
您想对哪门课程进行质量检查?
如有需要,使用 list_courses 查找可用课程。
2. 获取课程结构
调用 get_course_structure(course_identifier),一次性获取完整的模块到项目树。
此调用会返回所有模块及其项目、发布状态和摘要统计信息。
3. 检查结构
分析模块树,查找结构问题:
| 检查项 | 优先级 | 检查内容 |
|---|---|---|
| 空模块 | 警告 | 包含 0 个项目的模块(可能让学生感到困惑) |
| 命名一致性 | 建议 | 所有模块是否遵循相同的命名模式?(例如,“第 N 周:”“单元 N:”) |
| 模块数量 | 建议 | 是否与课程时长预期的模块数相符? |
| 项目排序 | 建议 | 是否使用子标题进行组织? |
4. 检查内容
调用 list_assignments(course_identifier) 并检查每个作业:
| 检查项 | 优先级 | 检查内容 |
|---|---|---|
| 缺少截止日期 | 阻断项 | 已评分但没有 due_at 日期的作业 |
| 缺少说明 | 警告 | 说明为空或为 null 的作业 |
| 缺少分值 | 警告 | 未设置 points_possible 的作业 |
| 日期顺序 | 警告 | 截止日期未按模块顺序排列 |
| 评分标准覆盖情况 | 建议 | 没有关联评分标准的已评分作业 |
对于页面,使用 get_page_content 检查结构中标记的页面是否有空白正文内容。
5. 检查发布状态
使用结构数据:
| 检查项 | 优先级 | 检查内容 |
|---|---|---|
| 隐藏项目 | 阻断项 | 未发布模块中已发布的项目(学生不可见) |
| 未发布模块 | 警告 | 学期开始前可能需要发布的模块 |
| 未设置首页 | 警告 | 课程未设置首页 |
调用 list_pages(course_identifier) 并查找 front_page: true,以检查是否设置了首页。
6. 检查完整性
比较模块结构,查找不一致之处:
| 检查项 | 优先级 | 检查内容 |
|---|---|---|
| 结构不一致 | 警告 | 大多数模块有 4 个项目,但部分模块只有 1 个 |
| 缺少项目类型 | 建议 | 大多数模块都有作业,但部分模块没有 |
根据最常见的项目类型模式建立“典型模块”配置,然后标记偏离该配置的模块。
7. 生成质量检查报告
按优先级分组展示结果:
## Course QC Report: [Course Name]
### Summary
- Modules: 15 | Items: 67 | Assignments: 15 | Pages: 20
- Issues found: 3 blocking, 5 warnings, 2 suggestions
### Blocking Issues (fix before publishing)
1. Assignment "Final Project" has no due date
2. Published "Week 5 Quiz" is inside unpublished "Week 5" module (invisible to students)
3. Assignment "Midterm" has no due date
### Warnings (should fix)
1. 2 empty modules: "Week 14", "Week 15"
2. 3 assignments missing descriptions: HW 3, HW 7, HW 12
3. No front page set for course
4. Due dates out of order: Week 8 assignment due before Week 7
5. "Week 3" module has 1 item while typical modules have 4
### Suggestions (nice-to-have)
1. Module naming: 13/15 use "Week N:" pattern but "Midterm Review" and "Final Review" don't
2. 5 graded assignments have no rubric attached
8. 提供后续操作
展示报告后,提供可执行的后续步骤:
您希望我:
- 自动修复发布状态——发布所有未发布的模块(需确认)
- 显示详情——进一步说明某个具体问题
- 运行无障碍审核——检查 WCAG 相关问题(使用 canvas-accessibility-auditor 技能)
- 检查其他课程
若要自动修复,请在每批操作前征得用户确认,然后使用 update_module 或 bulk_update_pages。
使用的 MCP 工具
| 工具 | 用途 |
|---|---|
list_courses | 查找可用课程 |
get_course_structure | 获取包含所有条目的完整模块树 |
list_assignments | 获取作业详情以检查内容 |
get_assignment_details | 深入查看已标记的作业 |
list_pages | 检查是否有首页 |
get_page_content | 确认页面是否包含内容 |
list_rubrics | 检查评分标准覆盖情况 |
update_module | 自动修复:发布模块 |
bulk_update_pages | 自动修复:发布页面 |
示例
用户:“检查 BADM 350 的质量”
**Agent:**运行所有检查,并输出按优先级排序的报告。
用户:“修复发布问题”
**Agent:**确认后发布 2 个未发布的模块。
注意事项
- 此技能专为在学生访问课程前管理课程结构的学习设计师打造。
- 在每个学期开始前或重大内容更新后运行此技能。
- 与
canvas-accessibility-auditor配合使用,可全面审查课程。