mcpField
C
canvas-week-plan

canvas-week-plan

github.com/vishalsachdev生产力308310 次安装今天更新
代码仓库

关于 canvas-week-plan

canvas-week-plan 面向学生,将 Canvas 课程数据整理为每周计划,汇总即将到期的作业、提交状态、成绩和待完成的互评,并支持精简视图或单课程视图。

主要功能

  1. 01列出未来 7 天到期的作业
  2. 02检查已提交、迟交和缺交状态
  3. 03显示各课程当前成绩
  4. 04查找待完成的互评
  5. 05支持精简和单课程计划

适用场景

  1. 01规划所有选修课程的一周安排
  2. 02确定逾期或尚未提交的作业优先级
  3. 03结合即将到期的作业查看成绩
  4. 04检查互评截止时间和完成进度

MCP 相关

需要配置 Canvas MCP 服务,并调用其工具获取作业、提交状态、成绩、互评和作业详情。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/vishalsachdev/canvas-mcp --skill canvas-week-plan

安装后在 Claude Code 中输入/canvas-week-plan确认已加载。

详细介绍

画布每周计划

为学生生成一份全面的每周计划,展示所有已选课程中即将到期的作业、当前成绩、提交状态和待完成的同伴评审。

前提条件

  • 必须在 Agent 的 MCP 客户端(例如 Claude Code、Cursor、Codex、OpenCode)中配置并运行 Canvas MCP 服务
  • 用户在 Canvas 课程中必须具有学生角色
  • 无需匿名处理——学生只能查看自己的数据

步骤

1. 获取即将到期的作业

调用 MCP 工具 get_my_upcoming_assignments 并设置 days=7,以获取未来一周内到期的所有作业。

每项作业需收集的数据:

  • 作业名称
  • 课程名称或代码
  • 截止日期和时间
  • 分值
  • 作业类型(测验、论文、讨论等)
2. 检查提交状态

调用 MCP 工具 get_my_submission_status,确定哪些作业已提交,哪些尚未提交。

将每项作业归类为以下状态之一:

  • 已提交——已提交
  • 未提交——仍需完成
  • 逾期——已过截止时间,但仍接受迟交
  • 缺交——已过截止时间,且不再接受迟交
3. 获取当前成绩

调用 MCP 工具 get_my_course_grades,查看每门已选课程的学业情况。

每门课程需收集:

  • 当前百分比和字母等级
  • 即将到期的作业对成绩的影响(如可计算)
4. 检查同伴评审

调用 MCP 工具 get_my_peer_reviews_todo,查找待完成的同伴评审。

每项待完成评审需收集:

  • 需要进行同伴评审的作业
  • 所需评审数量
  • 完成评审的截止时间
  • 已完成与剩余的评审数量
5. 生成每周计划

使用以下格式,呈现结构清晰且可执行的计划。根据实际获取的数据调整课程、作业和数字。

## Your Week Ahead

### Quick Stats
- **Due this week:** 5 assignments
- **Already submitted:** 2
- **Peer reviews pending:** 3
- **Highest priority:** Final Project (100 pts, due Fri)

### By Course

#### CS 101 (Current: 87% B+)
| Assignment | Due | Points | Status |
|------------|-----|--------|--------|
| Quiz 5 | Tue 11:59pm | 20 | Not submitted |
| Lab 8 | Thu 5:00pm | 30 | Submitted |

#### MATH 221 (Current: 92% A-)
| Assignment | Due | Points | Status |
|------------|-----|--------|--------|
| HW 12 | Wed 11:59pm | 25 | Not submitted |
| Final Project | Fri 11:59pm | 100 | Not submitted |

### Peer Reviews Due
- **Essay 2 Peer Review** (ENG 101) - 2 reviews needed by Thu
- **Project Proposal Review** (CS 101) - 1 review needed by Fri

### Suggested Priority Order
1. **Quiz 5** (CS 101) - Due tomorrow, 20 pts
2. **HW 12** (MATH 221) - Due Wed, 25 pts
3. **Peer Reviews** - 3 total, due Thu-Fri
4. **Final Project** (MATH 221) - Due Fri, 100 pts (start early!)

### Grade Impact
- Completing all assignments could raise your grades:
  - CS 101: 87% -> 89%
  - MATH 221: 92% -> 94%
6. 提供深入查看选项

呈现计划后,告知用户还可以进行哪些后续操作:

Need more details? I can:
1. Show full assignment instructions for any item
2. Check the rubric for an assignment
3. Show your grade breakdown for a course
4. Focus on just one course

使用的 MCP 工具

工具用途
get_my_upcoming_assignments获取指定时间范围内到期的作业
get_my_submission_status检查已提交与未提交的作业
get_my_course_grades获取各课程的当前成绩
get_my_peer_reviews_todo查找待完成的同伴评审任务
get_assignment_details深入查看特定作业(评分标准、说明)

输出形式

精简模式

如果用户要求“快速查看”或“只看重点”,请使用更简短的格式:

## This Week
- 3 assignments due (2 not started)
- 2 peer reviews pending
- Grades: CS 101 (87%), MATH 221 (92%), ENG 101 (85%)

**Priority:** Quiz 5 (tomorrow), HW 12 (Wed), Final Project (Fri)
单课程模式

如果用户指定了某门课程(例如“为我制定 CS 101 的每周计划”),则只展示该课程的作业、成绩和同伴评审。

备注

  • 最适合在每周开始时(周日或周一)使用
  • 作业按截止日期排序,同一日期内按分值排序
  • 突出显示逾期和缺交的作业,以便重点关注
  • 所有面向学生的工具都使用 get_my_* 前缀
  • 不涉及隐私问题,因为学生只能访问自己的数据

评论

支持 Markdown