mcpField
S
School MCP

School MCP

本地服务
github.com/54yyyu科研与教育85 周前更新

关于 School MCP

School MCP 是面向 Canvas 和 Gradescope 的学术 MCP 服务,并附带处理课程事务的命令行工具,帮助学生查看截止日期、管理课程文件和查阅课程信息。

主要功能

  1. 01获取 Canvas 和 Gradescope 截止日期
  2. 02将截止日期加入 macOS 提醒事项
  3. 03列出 Canvas 课程
  4. 04下载 Canvas 课程文件
  5. 05命令行查看公告、收件箱和成绩

适用场景

  1. 01查看即将到期的课程作业
  2. 02将作业加入 macOS 提醒事项
  3. 03下载并比较课程材料
  4. 04查阅公告、消息和成绩

MCP 相关

向 MCP 客户端提供学术工具,包括查询截止日期、添加提醒、列出课程和下载 Canvas 文件。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"school": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@smithery/cli

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

School MCP

smithery 徽章

一个用于学术工具的模型上下文协议(MCP)服务,可与 Canvas 和 Gradescope 平台集成。

功能

  • 作业截止日期:获取并显示 Canvas 和 Gradescope 中即将到来的截止日期
  • 日历集成:使用 AppleScript 将截止日期添加到 macOS 日历或提醒事项
  • 文件管理:从 Canvas 下载课程资料

快速开始

安装
通过 Smithery 安装

通过 Smithery 自动为 Claude Desktop 安装 School MCP:

npx -y @smithery/cli install @54yyyu/school-mcp --client claude
  1. 克隆仓库:
git clone https://github.com/yourusername/school-mcp.git
cd school-mcp
  1. 安装软件包:
pip install -e .
  1. 设置环境变量,可选择以下任一方式:
    • 使用内置的设置助手(推荐)
    • 手动创建 .env 文件
使用设置助手

运行设置助手以自动配置 Claude Desktop:

python setup_helper.py

设置助手将会:

  • 查找 Claude Desktop 配置文件
  • 在需要时创建 .env 文件
  • 使用正确的路径配置 MCP 服务
  • 将环境变量添加到 Claude Desktop 配置中
手动设置

如果你倾向于手动设置:

  1. 复制环境变量模板:
cp .env.template .env
# Edit .env with your credentials
  1. 按照 Claude Desktop 集成指南 配置 Claude Desktop。
运行服务

直接运行:

python -m school_mcp

或使用便捷脚本:

./run_server.py

CLI:cw / coursework

pip install -e . 也会安装一个命令行工具 cw(全名为 coursework):

cw deadlines                 # unsubmitted work due in the next 14 days (Canvas + Gradescope)
cw deadlines -s canvas -d 7  # Canvas only, next week
cw announcements -u          # unread course announcements
cw inbox -u                  # unread Canvas inbox conversations
cw message 512758            # read a thread (does not mark it read)
cw grades 20.201             # per-assignment scores for one course
cw files 6.7810 --compare ~/Desktop/MIT/6.7810 --missing   # what's not filed locally yet
cw download crispr           # download a course's files (or --id ID ... for a selection)
cw use columbia              # switch the active account

课程可通过课程代码、名称片段或 Canvas ID 指定。每个命令都支持 -h、--json,以及(与学校通信的命令)-a ACCOUNT。

CLI 的 Claude Code 技能位于 skill/coursework/;将其软链接到 ~/.claude/skills/,即可在每个会话中使用。

MCP 工具

  • get_deadlines:获取 Canvas 和 Gradescope 中即将到来的作业截止日期
  • add_to_reminders:将作业添加到 macOS 提醒事项
  • list_courses:列出所有可用的 Canvas 课程
  • download_course_files:从 Canvas 课程下载文件
  • set_download_path:配置下载文件的保存位置
  • get_download_path_info:查看当前下载位置

配置

服务会按以下顺序查找配置:

  1. 环境变量
  2. 当前目录中的 .env 文件
  3. 主目录中现有的 config.json 文件

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。