
edumints SCORM MCP
io.github.kemalyy由 GitHub 帳號 kemalyy 發布v1.9.0更新於 Oct 24, 2026
Compiles structured specs into SCORM 1.2/2004 e-learning packages. 47 tools, quality gate, no LLM.
概覽
一個託管式 MCP 伺服器,把結構化課程規格編譯成自包含的 SCORM 1.2/2004 數位學習包,讓助理以 zip 形式交付。
- 可以做什麼
- 用一份規格一次建好整門課程,或建立專案後逐步新增、修改與調整畫面,支援 31 種畫面類型,包括測驗、分支、遊戲與適性練習。設定主題、追蹤規則與版面構成,匯入媒體素材或合成語音。驗證、檢查並預覽課程,再打包成可下載的 SCORM zip。將測驗畫面匯出為 QTI 2.1,並列出或套用構成模式。
- 適用情境
- 當你希望由 AI 助理撰寫數位學習內容,並交付可在 Moodle、SCORM Cloud 等 LMS 中執行、符合標準的 SCORM 包,而不想使用桌面製作工具或本機環境時使用。
- 執行需求
- 透過 streamable HTTP 存取的遠端端點;需要 OAuth 登入或從供應方入口網站取得 API 金鑰。也可用 Docker 或本機 Python 自行部署,本機執行不需要密鑰;影片功能另需 Node 22+ 與 ffmpeg。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 edumints SCORM MCP,將其新增到工作區。
- 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
- 為需要使用其工具的對話啟用該服務。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
交給代理程式安裝
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/io.github.kemalyy%2Fedumints-scorm-mcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。其他 MCP 客戶端
把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。
{
"mcpServers": {
"edumints-scorm": {
"type": "http",
"url": "https://scorm.edumints.com/mcp"
}
}
}README
edumints SCORM MCP
[License: MIT] [Release] [Python 3.11+] [MCP]
An MCP server that compiles interactive, standards-conformant e-learning courses. You (or an AI client like Claude) are the author; this server is the compiler. Describe a course as a structured spec — the server validates it, renders it, and packages it as a self-contained SCORM zip that runs in any LMS (Moodle, SCORM Cloud, Rustici Engine, …). Deterministic — no LLM runs on the server.
🌐 Languages: English · Türkçe · Español · Русский · 简体中文 · Azərbaycanca · Қазақша · Кыргызча
Live demos
Four complete courses — four audiences, four visual identities — built entirely with this server and served from a live deploy. Click any screenshot to launch.
Each demo features a narrative thread, realistic artifact-mockup SVGs, flag-hunting simulations, before/after comparisons, timelines, a case game, and adaptive feedback — with question-level SCORM reporting underneath.
Why this exists
E-learning is usually hand-crafted in heavy desktop authoring tools. This project treats course production as infrastructure for AI agents instead:
- Zero-install authoring. Connect any MCP client to the hosted endpoint and start building — no toolchain, no local setup. The client describes the course (objectives, screens, quizzes, branching, media) over the Model Context Protocol; the server does the hard part: validation, theming, accessible HTML rendering, the SCORM runtime bridge, and packaging.
- A quality gate that says no. AI can generate a lot of mediocre content fast. This server
pushes back: schema validation on every spec, an anti-slop lint (
lint_course) whose error tier blocks builds, and a CI proof chain (XSD + real SCORM Cloud imports + behavioral probe) so that what ships actually works in an LMS — see Standards & evidence. - No vendor lock-in. Output is a plain SCORM 1.2/2004 zip with a self-contained player. MIT licensed, self-hostable, and open to contributions.
Author = the MCP client · Compiler = this server.
[A quiz screen rendered in the built-in slide-stage player]
Quickstart
Option 1 — Hosted MCP (zero install)
Point any MCP client (Claude desktop/web/Code, Antigravity, …) at:
Sign in via OAuth or get an API key at the portal: https://mcp.edumints.com. Then ask: "Build a 6-minute interactive course on X with a quiz and a summary." — you get a downloadable SCORM zip back.
Works best together with the authoring skill (a Claude Agent Skill that teaches an AI client how to author high-quality courses with this server): https://github.com/kemalyy/edumints-scorm-skill
Option 2 — Docker (self-hosted)
The image includes all optional features (ffmpeg, Node + HyperFrames for video, Piper TTS).
Apple Silicon + Docker Desktop: if the container crashes with
Illegal instruction(SIGILL), it is an upstream native-ARM64 issue incryptography's Rust bindings (pyca/cryptography#14733) — not this repo. Workaround: run with--platform linux/amd64(emulated).
Option 3 — Local (Python)
For video generation also install Node 22+ with HyperFrames (npm i -g hyperframes) plus ffmpeg.
Configuration: copy .env.example and adapt (data dir, quotas, base URL, TTLs). No secrets are
required to run locally.
Example
A course is produced from a single build_from_spec call (this is examples/small.json, abridged):
Full working specs live in examples/ (games, branching, themed and i18n courses).
Features
- 46 MCP tools —
build_from_spec(single-call path), granular editing (create_project/add_screen/update_screen/ …),set_theme/set_tracking,add_asset(SSRF-guarded imports),synthesize_speech(offline Piper TTS), video tools (ffmpeg / HyperFrames motion-graphics),preview/validate_package/build_package,lint_course(quality gate),export_qti(QTI 2.1),list_compositions/set_composition/set_screen_composition. - Composition system — every new course gets a deliberate focal point, an emphasis hierarchy
(E1–E5:
kicker,lead,<mark>) and a balanced symmetric/asymmetric layout chosen from a JSON pattern catalogue (rule of thirds, Z/F eye flow, course rhythm) — or any free grid — on all 31 screen types. The server asks the decisions that matter while the course is built (composition_questions), questions/polls/branching take an optional case (stimulus) for application-level assessment, tabs become master–detail and game scenes go side by side. New default palettemint(+ink,slate), embedded OFL fonts. Existing courses render unchanged. - 31 screen types — title, content, MCQ, true/false, fill-in-the-blank, drag & drop, hotspot, branching scenario, video, accordion, tabs, flashcards, matching, sorting, timeline, lottie, guided software simulation, decision scenario, term-match race, escape room, labeled diagram, data chart, image compare, results breakdown, poll/reflection, summary, composable game, adaptive practice, worked example, exploration, embedded HTML (artifact→SCORM). Full reference: docs/SCREEN_TYPES.md.
- Composable game engine — the
gamescreen composes mechanic primitives (score/lives/timer/hints) + declarativewhen event if condition then actionrules + branching nodes;adaptive_practiceestimates proficiency (Elo or Bayesian Knowledge Tracing) and calibrates difficulty per learner. See docs/GAME-PATTERNS.md. - Slide-stage player — fixed 16:9 stage scaled to every screen, player bar (play/seekbar/captions/menu/replay), narration-synced timed timelines, section-grouped menu, fully responsive, inline SVG icons. i18n shell (tr/en) with RTL support.
- Real SCORM tracking —
cmi.interactions(question-level reporting),cmi.objectives,adlcp:masteryscore(1.2) /completionThreshold(2004), LOM metadata, and a compact suspend-data v2 encoding for resume state. - Theming — style presets (
style-minimal/style-playful/style-premium, and more) layered with brand tokens: one style, many brands. Light/neutral/high-contrast presets, WCAG-aware,prefers-reduced-motionsupport. - Quality gates — anti-slop lint with a blocking error tier, plus game accessibility audits.
- Media — cross-MCP asset import (
add_assetvia data-URI or https), ffmpeg processing, programmatic motion-graphic/data-viz video (HyperFrames), built-in offline Turkish TTS (Piper). - Telemetry — optional xAPI statements from the player; cmi5 is partial (launch
detection only — no
cmi5.xmlpackaging yet). See docs/GAME-XAPI.md. - QTI 2.1 export — quiz screens export as QTI
assessmentItems for interop with assessment platforms. See docs/QTI.md. - SCORM 1.2 & 2004, deterministic packaging, cost guardrails, opt-in/lazy heavy features.
Standards & evidence
Claims are cheap; this repo ships its proof chain in CI:
- XSD conformance — generated
imsmanifest.xmlfiles are validated against the official ADL/IMS schemas for both SCORM 1.2 and 2004 (automated intests/test_conformance.py). - Real SCORM Cloud round-trip — CI imports built packages into actual SCORM Cloud via its REST API: 4/4 combinations (small/rich × 1.2/2004) must import with 0 parser warnings and produce a launchable registration. This is a blocking gate, not an advisory check.
- Behavioral probe —
scorm-probelaunches built courses in real Chromium against a fake LMS and asserts runtime behavior (init, navigation, scoring, completion). Also blocking in CI; a silent skip fails the build.
Details, procedures and honest limits: docs/CONFORMANCE.md. Accessibility: WCAG 2.2 AA conformance statement with explicitly documented limitations — docs/ACCESSIBILITY-CONFORMANCE.md.
Official sources
The only official distribution channels for this project are:
Anything else — mirror repos, re-uploaded zips, PyPI/npm packages, other registries or domains — is unofficial and unverified. We publish no PyPI or npm packages today. If you find a lookalike, please report it via SECURITY.md.
Documentation
Architecture
Output: self-contained index.html + imsmanifest.xml + assets + SCORM runtime, zipped.
Contributing
Issues and PRs welcome. The codebase favors small focused modules, additive changes and backward
compatibility. See CONTRIBUTING.md. Tests: pytest.
License
- This project: MIT — LICENSE.
- Vendored third-party components (scorm-again, lottie-web): THIRD_PARTY_NOTICES.md.
Built by edumints.com. SCORM is a trademark of ADL; other product names mentioned are trademarks of their respective owners (nominative use only).
來源:README.md,提交 fcb6d8c
工具
0版本歷史
4- v1.9.0最新Oct 14, 2026
- v1.8.0Oct 13, 2026
- v1.7.0Oct 8, 2026
- v1.6.0Sep 16, 2026
評分
已滿足適用檢查項的 85%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通必需25 分
- 已宣告認證方式必需10 分
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分