Schoology MCP 服务器使用说明
项目简介
该项目是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在将您的 Schoology 学习平台数据(如课程列表和即将截止的作业)提供给大型语言模型(LLM)客户端。它通过暴露一系列工具,允许 LLM 访问这些实时学习信息,从而增强 LLM 的上下文感知和功能扩展能力。
主要功能点
- 获取当前日期时间: 提供当前精确的日期和时间,格式为 'YYYY-MM-DD HH:MM:SS'。
- 获取已注册课程: 从 Schoology 获取用户当前注册的所有课程列表,返回课程标题和班级标题等信息。
- 获取即将截止的作业: 从 Schoology 抓取并整理即将到期的作业列表,包含作业标题、截止日期和所属课程。
- 安全数据访问: 通过基于 Cookie 的认证方式,安全地从 Schoology 获取个人学习数据。
安装步骤
由于 Schoology 没有官方 API,此服务器通过模拟浏览器请求并利用您的 Schoology Cookie 来获取数据。
-
获取 Schoology Cookie:
- 登录到您的 Schoology 账户。
- 打开浏览器开发者工具(通常按 'F12' 键)。
- 切换到“Console”(控制台)选项卡。
- 输入 'document.cookie' 并运行,复制输出结果。
-
获取即将截止作业的接口 URL:
- 在开发者工具中切换到“Network”(网络)选项卡。
- 刷新 Schoology 页面(如有必要),寻找名为 'upcoming_submissions_ajax' 的请求。
- 右键点击该请求 -> 复制 -> 复制 URL。
-
获取课程列表的接口 URL:
- 在开发者工具中切换到“Network”(网络)选项卡。
- 刷新 Schoology 页面(如有必要),然后点击 Schoology 页面上的课程下拉菜单以加载课程信息。
- 寻找名为 'courses' 的请求。
- 右键点击该请求 -> 复制 -> 复制 URL。
-
克隆仓库: 将 'schoology-mcp' 仓库克隆到您的本地机器上。
服务器配置
该 MCP 服务器需要由一个 MCP 客户端来启动和管理。以下是您在 MCP 客户端配置中添加 'schoology-mcp' 服务器的 JSON 示例。请根据您的实际情况替换占位符,例如仓库的实际路径和您从 Schoology 获取的配置信息。
{ "mcpServers": { "schoology-mcp": { "command": "uv", "args": [ "--directory", "PATH/TO/schoology-mcp", // 替换为schoology-mcp仓库的实际路径 "run", "server.py" ], "env": { "SCHOOLOGY_COOKIE": "<your_schoology_cookie>", // 替换为您从Schoology获取的Cookie "SCHOOLOGY_UPCOMING_ENDPOINT": "<upcoming_submissions_ajax_url>", // 替换为您从Schoology获取的即将截止作业接口URL "SCHOOLOGY_COURSES_ENDPOINT": "<courses_endpoint_url>" // 替换为您从Schoology获取的课程接口URL } } } }
基本使用方法
一旦 MCP 客户端配置并成功启动 'schoology-mcp' 服务器,您的 LLM 应用就可以通过 MCP 协议与服务器通信,并调用其暴露的工具来获取 Schoology 数据:
- LLM 可以调用 'get_current_date' 工具来获取当前日期时间。
- LLM 可以调用 'get_enrolled_courses' 工具来获取所有注册课程的列表。
- LLM 可以调用 'get_upcoming_assignments' 工具来获取即将截止的作业列表。
通过这些工具,LLM 可以为用户提供个性化的学习日程提醒、课程信息查询等服务,从而构建更加智能和实用的 LLM 应用。
信息
分类
AI与计算