关于 Student MCP Server
Student MCP Server 为学生提供教育知识图谱,用于组织课程、作业、考试、概念和学习资源。它还能记录学习进度、状态、优先级及任务先后关系。
主要功能
- 01维护跨会话知识图谱
- 02管理课程、作业和考试
- 03记录学习会话与进度
- 04跟踪截止日期和优先级
- 05关联概念与学习资源
- 06构建学习任务顺序
适用场景
- 01查看课程任务和即将到来的截止日期
- 02记录学习会话及概念掌握情况
- 03安排考试复习和高优先级任务
- 04为概念和作业设置学习先后关系
MCP 相关
该 MCP 服务向客户端提供教育知识图谱管理工具,包括会话记录、实体和关系的增删,以及课程、截止日期、考试和概念查询。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Student MCP Server
一个 MCP 服务实现,可提供用于管理学生知识图谱的工具,以结构化方式表示课程、作业、考试、概念和学习资源。该服务可帮助学生跟踪学业进度、管理截止日期并优化学习历程。
功能
- 持久化教育上下文:在多个会话中维护教育实体及其关系的结构化知识图谱
- 学习会话管理:使用唯一 ID 跟踪学习会话并记录进度变化
- 课程管理:以结构化格式组织课程、讲座、作业和考试
- 概念映射:连接学习概念,以展示概念之间的关系和先修要求
- 作业跟踪:监控作业状态、截止日期和相关资源
- 考试准备:跟踪考试日期并整理学习材料
- 截止日期管理:跟踪作业和考试即将到来的截止日期
- 资源整理:将学习资源关联到特定课程和概念
- 进度监控:跟踪课程、作业和考试的完成状态
- 知识关联:可视化不同教育概念之间的关系
实体
Student MCP Server 可识别以下实体类型:
- course:正在修读的课程
- assignment:家庭作业、项目及其他需提交的作业
- exam:测试、小测验及其他考核
- concept:知识主题和学习目标
- resource:教科书、文章、视频及其他学习材料
- note:个人学习笔记和观察记录
- lecture:单次课堂
- project:较大型的教育项目或任务
- question:用于学习或复习的具体问题
- term:学期或学段
- goal:学习目标和指标
- professor:课程讲师和教师
- status:实体状态值(active、completed、pending、abandoned)
- priority:优先级值(high、low)
关系
实体可以通过以下关系类型相互连接:
- enrolled_in:学生正在修读某门课程
- assigned_in:作业属于某门课程
- due_on:作业/考试有特定截止日期
- covers:讲座/资源涵盖某个概念
- references:笔记引用某个概念
- prerequisite_for:某个概念是另一个概念的基础
- taught_by:课程由某位教授授课
- scheduled_for:讲座/考试安排在特定时间
- contains:课程包含讲座/作业
- requires:作业要求掌握特定概念
- related_to:概念与另一个概念相关
- created_for:为特定讲座创建的笔记
- studies:学习会话聚焦于某个概念/考试
- helps_with:资源有助于完成作业/学习概念
- submitted:作业于某日期提交
- part_of:实体属于另一个实体
- included_in:包含在更大的组成部分中
- follows:实体在顺序上接续另一个实体
- attends:学生参加讲座
- graded_with:作业/考试依据特定标准评分
- has_status:将实体关联到其当前状态(active、completed、pending、abandoned)
- has_priority:将实体关联到其优先级(high、low)
- precedes:表示某项任务或作业在顺序上先于另一项
状态与优先级管理
Student MCP Server 提供全面的状态和优先级跟踪功能:
-
状态值:
- active:当前正在处理或学习
- completed:已完成或成功提交
- pending:尚未开始,但已列入计划
- abandoned:不再继续进行
-
优先级值:
- high:需要立即关注,或对成绩有重大影响
- low:可以在更高优先级的事项完成后处理
-
顺序学习管理:
- 定义哪些作业或概念必须先于其他内容完成
- 按合理的顺序安排学习活动
- 为相关的学习任务建立依赖关系
- 根据课程材料构建结构化学习路径
可用工具
Student MCP Server 提供以下工具,用于与教育知识进行交互:
startsession
开始新的学习时段,生成唯一的时段 ID,并显示当前课程、即将到来的截止日期、最近学习的概念以及过往学习时段。通过 has_status 关系显示状态信息,通过 has_priority 关系显示优先级,并根据顺序依赖关系确定接下来可以处理的作业。
loadcontext
加载特定实体(课程、作业等)的详细上下文,并根据实体类型显示相关信息。其中包括状态信息、优先级以及相关实体之间的顺序关系。
endsession
通过结构化的多阶段流程记录学习时段的结果:
- summary:记录时段摘要、时长和课程重点
- conceptsLearned:记录时段内学习的概念
- assignmentUpdates:跟踪作业更新
- statusUpdates:记录实体状态值的变更
- courseStatus:更新整体课程状态、作业优先级和顺序关系
- newConcepts:记录时段内学到的新概念
- assembly:汇总所有时段数据
buildcontext
在知识图谱中创建新实体、关系或观察记录:
- entities:添加新的教育实体(课程、作业、概念、状态、优先级等)
- relations:在实体之间创建关系(包括 has_status、has_priority、precedes)
- observations:为现有实体添加观察记录
deletecontext
从知识图谱中移除实体、关系或观察记录:
- entities:移除教育实体
- relations:移除实体之间的关系(包括状态、优先级和顺序关系)
- observations:从实体中移除特定观察记录
advancedcontext
从知识图谱中检索信息:
- graph:获取整个知识图谱
- search:根据查询条件搜索节点
- nodes:按名称获取特定节点
- course:获取特定课程的详细信息
- deadlines:获取即将到来的截止日期
- assignment:获取特定作业的详细信息
- exam:获取特定考试的详细信息
- concepts:获取概念信息
- lecture:获取讲座信息
- term:获取学期的详细信息
- status:查找具有特定状态值的实体
- priority:查找具有特定优先级值的实体
- sequence:识别学习活动的顺序关系
特定领域功能
Student MCP Server 包含专为教育领域设计的功能:
- getCourseOverview:全面查看课程,包括讲座、作业、考试和资源
- getUpcomingDeadlines:查找即将到期的作业和考试
- getAssignmentStatus:获取作业的详细状态,包括进度和相关概念
- getExamPrep:获取考试准备材料和相关概念
- findRelatedConcepts:发现不同教育概念之间的联系
- getStudyProgress:跟踪各门课程的学习进度
- getTermOverview:查看某学期的课程和学习任务概览
- getConceptMastery:评估对特定概念的理解程度
- getStatusOverview:查看所有处于特定状态(进行中、已完成、待处理、已放弃)的实体
- getPriorityItems:识别优先级较高的作业和学习任务
- getLearningSequence:根据先后关系,可视化学习活动的顺序
示例提示词
开始一个会话
Let's start a new study session for my Computer Science course.
加载课程上下文
Load the context for my Calculus 101 course so I can see upcoming assignments and exams.
记录学习进度
I've just finished studying for 2 hours on Calculus 101. I focused on limits and derivatives, completed my homework assignment on basic differentiation, and took notes on the chain rule. I've marked the limits content as completed and set the derivatives practice as high priority. I'm feeling more confident about the upcoming exam next week.
管理学习材料
Create a new concept called "Binary Trees" related to my Data Structures course with the description "A binary tree is a tree data structure in which each node has at most two children." Set its status to active and make it precede the "Graph Algorithms" concept.
Update the status of my "Database Assignment" to "completed" and add that I successfully implemented all required queries. Mark the "Advanced SQL" concept as high priority for my next study session.
用途
此 MCP 服务可帮助学生:
- 保持学习连贯性:跟踪你在多个学习会话中学到的内容
- 优化学习时间:专注于优先级较高的作业和概念
- 跟踪学业进度:监控课程和作业的完成情况,以及对概念的掌握程度
- 准备考试:整理学习材料,并跟踪备考进度
- 管理截止日期:及时了解作业和考试的截止日期
- 关联知识:查看不同课程中各类概念之间的关系
- 安排工作优先级:专注于优先级较高的作业和学习任务
- 构建学习结构:为相关概念的学习安排合理顺序
- 跟踪状态:监控作业、项目和学习活动的状态
配置
在 Claude Desktop 中使用
将以下内容添加到 claude_desktop_config.json:
从 GitHub 安装并使用 npx 运行
{
"mcpServers": {
"student": {
"command": "npx",
"args": [
"-y",
"github:tejpalvirk/student"
]
}
}
}
全局安装并直接运行
首先,全局安装该软件包:
npm install -g github:tejpalvirk/student
然后配置 Claude Desktop:
{
"mcpServers": {
"student": {
"command": "contextmanager-student"
}
}
}
docker
{
"mcpServers": {
"student": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"mcp/student"
]
}
}
}
构建
从源代码构建
# Clone the repository
git clone https://github.com/tejpalvirk/contextmanager.git
cd contextmanager
# Install dependencies
npm install
# Build the server
npm run build
# Run the server
cd student
node student_index.js
Docker:
docker build -t mcp/student -f student/Dockerfile .
许可证
此 MCP 服务采用 MIT License 许可。这意味着你可以自由使用、修改和分发该软件,但须遵守 MIT License 的条款和条件。详情请参阅项目仓库中的 LICENSE 文件。
环境变量
Student MCP Server 支持以下环境变量,用于自定义数据的存储位置:
-
MEMORY_FILE_PATH:存储知识图谱数据的路径
- 可以是绝对路径或相对路径(相对路径以当前工作目录为基准)
- 默认值:
./student/memory.json
-
SESSIONS_FILE_PATH:存储会话数据的路径
- 可以是绝对路径或相对路径(相对路径以当前工作目录为基准)
- 默认值:
./student/sessions.json
用法示例:
# Store data in the current directory
MEMORY_FILE_PATH="./student-memory.json" SESSIONS_FILE_PATH="./student-sessions.json" npx github:tejpalvirk/contextmanager-student
# Store data in a specific location (absolute path)
MEMORY_FILE_PATH="/path/to/data/student-memory.json" npx github:tejpalvirk/contextmanager-student
# Store data in user's home directory
MEMORY_FILE_PATH="$HOME/contextmanager/student-memory.json" npx github:tejpalvirk/contextmanager-student
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。