School Mcp

School Mcp

🚀 学校 MCP

学校 MCP 是一个用于学术工具的模型上下文协议(MCP)服务器,它与 Canvas 和 Gradescope 平台集成,能为用户提供便捷的学术服务,如获取作业截止日期、进行日历集成以及文件管理等。

🚀 快速开始

📦 安装指南

通过 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
# 编辑.env以获取你的凭证
  1. 根据 Claude Desktop Integration Guide 配置 Claude Desktop。

运行服务器

直接运行:

python -m school_mcp

或者使用方便的脚本:

./run_server.py

✨ 主要特性

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

💻 使用示例

基础用法

以下是使用 get_deadlines 工具获取即将到来的作业截止日期的示例:

# 调用 get_deadlines 工具获取截止日期
python -m school_mcp get_deadlines

高级用法

假设你想将获取的作业截止日期添加到 macOS Reminders 中,可使用 add_to_reminders 工具:

# 先获取截止日期,再将其添加到 macOS Reminders
python -m school_mcp get_deadlines | python -m school_mcp add_to_reminders

🔧 技术细节

服务器按以下顺序尝试查找配置:

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

📄 许可证

本项目采用 MIT 许可证。

工具列表

工具名称 功能描述
get_deadlines 从 Canvas 和 Gradescope 获取即将到来的作业截止日期
add_to_reminders 将作业添加到 macOS Reminders
list_courses 列出所有可用的 Canvas 课程
download_course_files 从 Canvas 课程下载文件
set_download_path 配置文件保存的位置
get_download_path_info 检查当前下载位置
  • 0 关注
  • 0 收藏,12 浏览
  • system 提出于 2025-09-29 00:54

相似服务问题