canvas-course-qc

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Canvas Course QC

Canvas课程质量检查

Automated quality checklist for Learning Designers to verify a Canvas course is ready for students. Runs structure, content, publishing, and completeness checks — then reports issues by priority.
供学习设计师使用的自动化质量检查清单,用于验证Canvas课程是否已为学生访问做好准备。会运行结构、内容、发布及完整性检查,然后按优先级报告问题。

Prerequisites

前置条件

  • Canvas MCP server must be running and connected.
  • Authenticated user must have instructor, TA, or designer role in the target course.
  • Best run before the semester starts or before publishing a course to students.
  • 必须运行并连接Canvas MCP服务器
  • 已认证用户在目标课程中必须拥有讲师、助教或设计师权限
  • 最佳运行时机为学期开始前或课程向学生发布前。

Steps

操作步骤

1. Identify Target Course

1. 确定目标课程

Ask the user which course to QC. Accept a course code, Canvas ID, or course name.
If not specified, prompt:
Which course would you like to quality-check?
Use
list_courses
to look up available courses if needed.
询问用户需要进行QC的课程。可接受课程代码、Canvas ID或课程名称。
若未指定,提示:
你想要对哪门课程进行质量检查?
必要时可使用
list_courses
工具查找可用课程。

2. Retrieve Course Structure

2. 获取课程结构

Call
get_course_structure(course_identifier)
to get the full module-to-items tree in one call.
This returns all modules with their items, publishing states, and summary statistics.
调用
get_course_structure(course_identifier)
一次性获取从模块到内容项的完整树形结构。
该工具会返回所有模块及其内容项、发布状态和汇总统计数据。

3. Run Structure Checks

3. 运行结构检查

Analyze the module tree for structural issues:
CheckPriorityWhat to Look For
Empty modulesWarningModules with 0 items (confusing to students)
Naming consistencySuggestionDo all modules follow the same pattern? (e.g., "Week N:", "Unit N:")
Module countSuggestionDoes it match expected count for course length?
Item orderingSuggestionSubHeaders present for organization?
分析模块树形结构,排查结构性问题:
检查项优先级检查内容
空模块警告包含0个内容项的模块(会让学生感到困惑)
命名一致性建议所有模块是否遵循相同命名规范?(例如:「Week N:」「Unit N:」)
模块数量建议模块数量是否与课程时长的预期数量匹配?
内容项排序建议是否包含用于分类的子标题?

4. Run Content Checks

4. 运行内容检查

Call
list_assignments(course_identifier)
and check each assignment:
CheckPriorityWhat to Look For
Missing due datesBlockingGraded assignments without a due_at date
Missing descriptionsWarningAssignments with empty or null description
Missing pointsWarningAssignments without points_possible set
Date sequencingWarningDue dates that don't follow module order
Rubric coverageSuggestionGraded assignments without an associated rubric
For pages, check if any pages in modules have empty body content using
get_page_content
for pages flagged in the structure.
调用
list_assignments(course_identifier)
并检查每个作业:
检查项优先级检查内容
缺少截止日期阻塞需评分的作业未设置
due_at
日期
缺少描述警告作业描述为空或未填写
缺少分值警告作业未设置
points_possible
分值
日期顺序混乱警告截止日期与模块顺序不符
评分标准覆盖建议需评分的作业未关联评分标准
对于页面,使用
get_page_content
工具检查模块中标记的页面是否存在内容为空的情况。

5. Run Publishing Checks

5. 运行发布检查

Using the structure data:
CheckPriorityWhat to Look For
Ghost itemsBlockingPublished items inside unpublished modules (invisible to students)
Unpublished modulesWarningModules that may need publishing before semester
No front pageWarningCourse has no front page set
Check for front page by calling
list_pages(course_identifier)
and looking for
front_page: true
.
使用结构数据进行以下检查:
检查项优先级检查内容
幽灵内容项阻塞已发布的内容项位于未发布模块中(学生不可见)
未发布模块警告学期开始前可能需要发布的模块
未设置首页警告课程未设置首页
通过调用
list_pages(course_identifier)
并查找
front_page: true
来检查是否设置了首页。

6. Run Completeness Checks

6. 运行完整性检查

Compare module structures to find inconsistencies:
CheckPriorityWhat to Look For
Inconsistent structureWarningMost modules have 4 items but some only have 1
Missing item typesSuggestionMost modules have an Assignment but some don't
Build a "typical module" profile from the most common item-type pattern, then flag modules that deviate.
对比模块结构,查找不一致之处:
检查项优先级检查内容
结构不一致警告大多数模块包含4个内容项,但部分模块仅含1个
缺少内容项类型建议大多数模块包含作业,但部分模块没有
根据最常见的内容项类型模式构建「典型模块」模板,然后标记偏离该模板的模块。

7. Generate QC Report

7. 生成QC报告

Present results grouped by priority:
undefined
按优先级分组展示结果:
undefined

Course QC Report: [Course Name]

课程QC报告:[课程名称]

Summary

摘要

  • Modules: 15 | Items: 67 | Assignments: 15 | Pages: 20
  • Issues found: 3 blocking, 5 warnings, 2 suggestions
  • 模块数:15 | 内容项数:67 | 作业数:15 | 页面数:20
  • 发现问题:3个阻塞项,5个警告项,2个建议项

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
  1. 作业「期末项目」未设置截止日期
  2. 已发布的「第5周测验」位于未发布的「第5周」模块中(学生不可见)
  3. 作业「期中测验」未设置截止日期

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
  1. 2个空模块:「第14周」、「第15周」
  2. 3个作业缺少描述:作业3、作业7、作业12
  3. 课程未设置首页
  4. 截止日期顺序混乱:第8周作业截止日期早于第7周
  5. 「第3周」模块仅含1个内容项,而典型模块包含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
undefined
  1. 模块命名:15个模块中有13个采用「Week N:」格式,但「期中复习」和「期末复习」未遵循该格式
  2. 5个需评分的作业未关联评分标准
undefined

8. Offer Follow-up Actions

8. 提供后续操作选项

After presenting the report, offer actionable next steps:
Would you like me to:
  1. Auto-fix publishing -- Publish all unpublished modules (with confirmation)
  2. Show details -- Expand on a specific issue
  3. Run accessibility audit -- Check WCAG compliance (uses canvas-accessibility-auditor skill)
  4. Check another course
For auto-fix, use
update_module
or
bulk_update_pages
with user confirmation before each batch.
展示报告后,提供可执行的后续步骤:
你是否需要我执行以下操作:
  1. 自动修复发布问题 —— 发布所有未发布的模块(需确认)
  2. 查看详情 —— 展开特定问题的细节
  3. 运行可访问性审核 —— 检查WCAG合规性(使用canvas-accessibility-auditor技能)
  4. 检查另一门课程
对于自动修复操作,在每批操作前需获得用户确认,然后使用
update_module
bulk_update_pages
工具执行。

MCP Tools Used

使用的MCP工具

ToolPurpose
list_courses
Find available courses
get_course_structure
Full module tree with items
list_assignments
Assignment details for content checks
get_assignment_details
Deep-dive on flagged assignments
list_pages
Check for front page
get_page_content
Verify pages have content
list_all_rubrics
Check rubric coverage
update_module
Auto-fix: publish modules
bulk_update_pages
Auto-fix: publish pages
工具用途
list_courses
查找可用课程
get_course_structure
获取包含内容项的完整模块树
list_assignments
获取作业详情以进行内容检查
get_assignment_details
深入查看标记的作业
list_pages
检查是否设置首页
get_page_content
验证页面是否有内容
list_all_rubrics
检查评分标准覆盖情况
update_module
自动修复:发布模块
bulk_update_pages
自动修复:发布页面

Example

示例

User: "QC check for BADM 350"
Agent: Runs all checks, outputs the prioritized report.
User: "Fix the publishing issues"
Agent: Publishes the 2 unpublished modules after confirmation.
用户: "对BADM 350课程进行QC检查"
Agent: 运行所有检查,输出按优先级排序的报告。
用户: "修复发布问题"
Agent: 获得确认后,发布2个未发布的模块。

Notes

注意事项

  • This skill is designed for Learning Designers who manage course structure before students access it.
  • Run this before each semester or after major content updates.
  • Pairs well with
    canvas-accessibility-auditor
    for comprehensive course review.
  • 本技能专为学习设计师设计,用于在学生访问前管理课程结构。
  • 建议在每学期开始前或内容重大更新后运行。
  • canvas-accessibility-auditor
    技能配合使用,可实现全面的课程评审。