
Jbnu Lms Student
io.github.moon0825由 GitHub 账号 moon0825 发布v0.8.0更新于 Oct 24, 2026
전북대학교 학생의 공지, 과제, 마감, 제출 상태와 수업자료를 읽기 전용으로 정리하는 Windows/macOS 로컬 MCP 서버입니다.
概览
非官方本地 MCP 服务器,让助手只读查看全北大学学生的 LMS 公告、作业、截止时间、提交状态和课程资料。
- 可以做什么
- 汇总今日待办、每周学习计划、临近截止日期,以及遗漏事项提醒。列出新发布或置顶的公告,并显示自上次检查以来的变化。读取作业详情、要求和提交状态,并打开公告或作业的 LMS 原文页面。按周查找课程资料并下载文件,用哈希避免重复副本。整理可加入日历的确定日程,并提交问题报告或功能建议,可本地保存或经 webhook 发送。
- 适用场景
- 适合在 Windows 或 macOS 上使用 Claude Desktop 或 Codex 的全北大学学生,让助手回答今天要做什么、有什么新内容、某作业是否已提交等问题,且不会改动 LMS 中的任何内容。
- 运行要求
- 通过 npx 运行的本地进程,需要 Node.js 22 或更高版本,以及 Chrome 或 Edge 用于浏览器登录。学生需在浏览器窗口中自行完成学校 SSO 和通行密钥登录,工具不接收密码。可选环境变量用于配置 LMS 地址、数据目录、浏览器、下载目录、会话保活,以及可选的反馈 webhook 地址和令牌。
安装
在 SourceWeft 中
- 打开 控制台中的 Jbnu Lms Student,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
전북대 LMS 학업비서
공지부터 과제 마감, 제출 상태, 수업자료까지.
학생이 지금 해야 할 일을 먼저 보여 주는 비공식 로컬 MCP입니다.
읽기 전용 LMS · 패스키 지원 · Windows + macOS · 25개 도구 · 사용자 승인 피드백
비공식 학생 도구: 전북대학교가 운영하거나 보증하는 공식 서비스가 아닙니다. 학교 명칭과 UI 자산의 권리는 전북대학교에 있으며, 공개 배포 전에는 공식 UI 사용 지침을 확인해야 합니다.
전북대학교 LMS(JBNU LXP, https://lms.jbnu.ac.kr)에 로그인한 학생이 Claude Desktop·Codex 같은 AI 클라이언트에서 "오늘 해야 할 일 알려줘", "이번 주 과제와 마감일 정리해줘", "새로 올라온 공지 알려줘" 처럼 물어볼 수 있게 해 주는 로컬 STDIO MCP 서버입니다. 모든 LMS 기능은 조회 전용이며, 로그인은 사용자가 브라우저에서 직접(패스키·2차 인증 포함) 완료합니다.
한눈에 보는 경험
- 비밀번호·패스키·인증 코드를 절대 입력받지 않습니다.
- LMS 세션은 Windows DPAPI 또는 macOS Keychain으로 내 PC에만 보관합니다.
- LMS 데이터와 인증정보는
lms.jbnu.ac.kr이외로 전송하지 않습니다. 문제 신고·기능 제안은 사용자가 전송 내용을 확인하고 승인한 경우에만 로컬 보관함 또는 설정된 HTTPS 수집기로 접수합니다.
1. 가장 쉬운 설치 (Windows / macOS)
준비물은 Node.js 22 이상과 Chrome 또는 Edge입니다. 폴더를 만들거나 소스 코드를 내려받을 필요가 없습니다.
Codex
Windows는 PowerShell, Mac은 터미널에 아래 한 줄을 붙여넣습니다.
Claude Desktop
명령이 환경을 점검하고 기존 설정을 백업한 뒤 MCP를 등록하고 로그인 창을 엽니다. 전북대 아이디·비밀번호·패스키·2차 인증은 브라우저에서 직접 완료합니다. 실제 LMS 홈에 수강 과목이 보이면 Windows는 창을 그대로 두고, Mac은 방금 열린 로그인용 Chrome/Edge 창만 닫습니다. 완료 메시지가 나오면 Codex 또는 Claude Desktop을 완전히 종료했다가 다시 실행하면 됩니다.
Claude Desktop에서는 GitHub Release의 .mcpb 설치 파일도 사용할 수 있습니다. 개발자용 소스 설치와 수동 설정은 설치 안내서에 분리했습니다.
2. 첫 사용
Claude 에서 이렇게 물어보세요.
오늘 해야 할 일 알려줘
처음이면 도구가 자동 제어가 없는 로그인용 일반 브라우저 창을 LMS /my/에서 엽니다.
LMS 로그인 페이지가 만든 공식 리다이렉트로 통합로그인에 들어간 뒤,
세 번째 아이디 로그인 탭을 선택해 아이디·비밀번호로 1차 인증한 뒤, 다음 2차 인증 화면에서 패스키를 선택하세요.
실제 수강 과목이 보이는 LMS 화면에 도착하면 Windows는 창을 그대로 두고, Mac은 방금 열린 로그인용 Chrome/Edge 창만 닫습니다. 도구가 LMS 쿠키만 읽어
검증하고, 원래 질문을 이어서 처리합니다. 두 번째 패스키 인증 로그인 탭의 비밀번호 없는 단독 로그인과는
다른 경로입니다. 인증이 끝나면 LMS 세션은 Windows DPAPI 또는 macOS Keychain에 저장하고, 전용 브라우저에는 LMS 쿠키만 남겨 원문 보기에 재사용합니다.
비밀번호·자동완성·방문 기록·SSO 쿠키·사이트 저장소·캐시는 자동 정리합니다. 패스키 인증에 필요한 팝업은 이 전용 창에서만 허용됩니다.
로그인만 다시 할 수도 있습니다.
3. 이런 질문에 답합니다
전체 도구 25개의 입력·출력은 docs/05-tool-spec.md 에 있습니다.
응답에는 항상 기준 시각(Asia/Seoul), 로그인 상태, 마지막 동기화 시각, 데이터 출처(Moodle API / 웹 AJAX / LMS 화면 해석 / AI 추정)와 원문 URL 이 붙습니다. 실패하면 영향 범위·자동 복구·바로 실행할 다음 행동·비식별 진단 ID를 함께 안내하며, 일부 강좌만 실패한 결과는 완전한 빈 결과와 구분합니다. 과제는 마감·남은 시간·제출 상태·지각 허용 여부를, 공지는 📌 고정(중요)·🆕 새 글·📎 첨부 여부를 표시합니다. 자료를 다시 내려받으면 SHA-256으로 같은 파일인지 확인해 중복 복사본을 만들지 않습니다.
4. 인증 방식 요약
전북대 LMS 는 통합인증(SSO) 전용입니다. 모바일 웹서비스 자체는 켜져 있지만 로그인 유형이 앱 내 자격 증명 방식(typeoflogin=1)이고, 브라우저 SSO 토큰 발급 경로(launch.php)는 활성화되지 않았습니다. 2차 인증을 우회하거나 비밀번호를 도구에 전달하지 않기 위해 브라우저 세션 방식을 사용합니다(조사 근거: docs/03-auth-decision-record.md).
그래서 이 도구는 다음처럼 동작합니다.
- 앱 전용 브라우저 프로필로 Chrome/Edge 창을 열어 사용자가 직접 SSO·패스키를 완료
- 로그인된 프로필에서 LMS 세션 쿠키와
sesskey만 추출해 Windows DPAPI 또는 macOS Keychain에 저장 - 성공하면 LMS 이외 쿠키와 비밀번호·자동완성·방문 기록·사이트 저장소·캐시를 지우고, Chrome이 사용자 계정으로 암호화한 LMS 쿠키만 원문 보기용으로 유지
- 이후 조회는 브라우저 없이 Moodle 웹 AJAX API + LMS 화면 해석으로 수행
- 공식 토큰이 확보되면(학교 정책 변경 시) 자동으로 공식 REST API 를 우선 사용
로그인 창 방식은 두 가지입니다.
편의를 위해 서버가 켜져 있는 동안 20분마다 세션을 연장(keep-alive)합니다. 끄려면 JBNU_LMS_KEEPALIVE=0.
5. 명령행 도구
6. 환경 변수
7. 개발
문서: 요구사항 · 위협 모델 · 인증 결정 기록 · 구조와 데이터 흐름 · 도구 명세 · 설치 안내 · 장애 해결 · 배포 체크리스트 · 실제 LMS 검증 · 확장 로드맵 · 오류·복구 UX 계약 · 파서 호환성 · 멀티플랫폼 배포 · 피드백 수집 계약 · 브랜드·표시 정책 · 캘린더 동기화 UX · 학생 신뢰성 워크플로
8. 보안상 알아 둘 것
- 이 PC 에 로그인할 수 있는 사람은 저장된 LMS 세션을 사용할 수 있습니다. 공용 PC 에서는 사용 후
disconnect_lms를 실행하세요. - Windows 세션 파일(
session.dpapi)과 원문 보기용 프로필은.gitignore로 제외되어 있으며 절대 공유하지 마세요. Mac 세션은 로그인 Keychain에 저장됩니다. 전용 프로필에는 LMS 쿠키만 남기고 방문 기록·SSO 쿠키·자격 증명 데이터는 자동 정리합니다. - 로그(stderr)에는 토큰·쿠키·비밀번호·과제 본문이 기록되지 않도록 마스킹합니다.
- 문제 신고·기능 제안은 자동 전송하지 않습니다. 제출 내용과 수집 위치를 확인한 뒤 승인해야 하며, 원격 전송본의 삭제·보존 정책은 수집 서버 운영자에게 적용됩니다.
- 상태를 바꾸는 기능(과제 제출, 글쓰기, 메시지)은 구현되어 있지 않습니다. 확장 계획은 docs/10-roadmap-extensions.md 를 보세요.
라이선스: MIT. 전북대학교·유비온과 무관한 비공식 도구이며 LMS 이용약관과 학교 정책을 준수해 사용하세요.
来源:README.md,提交 b0059c8
工具
0版本历史
1- v0.8.0最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分