Server data from the Official MCP Registry
Compiles structured specs into SCORM 1.2/2004 e-learning packages. 30 tools, quality gate, no LLM.
Compiles structured specs into SCORM 1.2/2004 e-learning packages. 30 tools, quality gate, no LLM.
Remote endpoints: streamable-http: https://scorm.edumints.com/mcp
5 tools verified · Open access · No issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Remote servers are capped at 8.0 because source code is not available for review. The score reflects endpoint verification only.
Remote Plugin
No local installation needed. Your AI client connects to the remote endpoint directly.
Add this to your MCP configuration to connect:
{
"mcpServers": {
"io-github-kemalyy-edumints-scorm-mcp": {
"url": "https://scorm.edumints.com/mcp"
}
}
}From the project's GitHub README.
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 · Қазақша · Кыргызча
Three complete courses — three audiences, three visual identities — built entirely with this server and served from a live deploy. Click any screenshot to launch.
| Be a Password Hero! | Spot the Phish | The Ad Hominem Argument |
|---|---|---|
![]() | ![]() | ![]() |
Ages 9–13 · internet safety · style-playful + custom brand | Corporate onboarding · email security · style-minimal + corporate brand | Graduate level · argumentation theory · style-premium |
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.
E-learning is usually hand-crafted in heavy desktop authoring tools. This project treats course production as infrastructure for AI agents instead:
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.Author = the MCP client · Compiler = this server.

Point any MCP client (Claude desktop/web/Code, Antigravity, …) at:
https://scorm.edumints.com/mcp
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
docker run -p 8000:8000 -v "$PWD/data:/data" ghcr.io/kemalyy/edumints-scorm-mcp:latest
# MCP endpoint: http://localhost:8000/mcp · health: http://localhost:8000/health
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).
python -m venv .venv && source .venv/bin/activate
pip install ".[tts]" # ".[tts]" adds offline Turkish TTS (Piper); drop it if unwanted
python server.py # serves MCP over HTTP
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.
A course is produced from a single build_from_spec call (this is examples/small.json, abridged):
{
"title": "Intro to SCORM",
"scorm_version": "1.2",
"language": "en",
"tracking": { "completion_rule": "viewed_all_and_passed", "passing_score": 50 },
"screens": [
{ "type": "title_slide", "id": "t1", "title": "Intro to SCORM", "subtitle": "Core concepts in 5 minutes" },
{ "type": "content_slide", "id": "c1", "title": "What is SCORM?", "body_html": "<p><strong>SCORM</strong> lets e-learning content talk to an LMS.</p>" },
{ "type": "mcq", "id": "q1", "title": "Mini quiz", "prompt_html": "<p>What is SCORM for?</p>",
"options": [
{ "id": "a", "text_html": "Content–LMS communication", "correct": true },
{ "id": "b", "text_html": "Video editing" }
], "points": 10 },
{ "type": "summary", "id": "s1", "title": "Well done", "body_html": "<p>You learned the basics.</p>" }
]
}
build_from_spec(spec) → { project_id, screens: 4, warnings: [] }
build_package(project_id) → downloadable SCORM zip
├─ imsmanifest.xml
├─ index.html (self-contained player + runtime)
└─ assets/
Full working specs live in examples/ (games, branching, themed and i18n courses).
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).game screen composes mechanic primitives
(score/lives/timer/hints) + declarative when event if condition then action rules + branching
nodes; adaptive_practice estimates proficiency (Elo or Bayesian Knowledge Tracing) and
calibrates difficulty per learner. See docs/GAME-PATTERNS.md.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.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-motion support.add_asset via data-URI or https), ffmpeg processing,
programmatic motion-graphic/data-viz video (HyperFrames), built-in offline Turkish TTS (Piper).cmi5.xml packaging yet). See docs/GAME-XAPI.md.assessmentItems for interop with assessment
platforms. See docs/QTI.md.Claims are cheap; this repo ships its proof chain in CI:
imsmanifest.xml files are validated against the official
ADL/IMS schemas for both SCORM 1.2 and 2004 (automated in tests/test_conformance.py).scorm-probe launches 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.
The only official distribution channels for this project are:
| Channel | URL |
|---|---|
| Source repository | https://github.com/kemalyy/edumints-scorm-mcp |
| Authoring skill | https://github.com/kemalyy/edumints-scorm-skill |
| Container image | ghcr.io/kemalyy/edumints-scorm-mcp |
| Hosted MCP endpoint | https://scorm.edumints.com/mcp |
| Account portal | https://mcp.edumints.com |
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.
| Doc | Contents |
|---|---|
| docs/SCREEN_TYPES.md | All 28 screen types with fields and examples |
| docs/CONFORMANCE.md | SCORM conformance evidence & procedures |
| docs/ACCESSIBILITY-CONFORMANCE.md | WCAG 2.2 AA statement |
| docs/LMS-INTEGRATION.md | LMS-specific integration notes |
| docs/QTI.md | QTI 2.1 export |
| docs/GAME-PATTERNS.md | Game engine patterns |
| docs/GAME-ADAPTIVE.md | Adaptive practice (Elo/BKT) |
| docs/GAME-ANTISLOP.md | Anti-slop quality gate |
| docs/GAME-XAPI.md | xAPI/cmi5 telemetry |
| docs/GAME-A11Y.md | Game accessibility |
| docs/ARCHITECTURE.md | System architecture |
MCP client (author) ──► scorm-mcp (compiler)
├─ core/ models (Pydantic), packaging, storage
├─ components/ HTML renderer + runtime engine + video compiler
├─ auth/ API-key + OAuth, SSRF guards
├─ themes/ design tokens / presets
├─ runtime/ vendored SCORM runtime (scorm-again, MIT)
└─ server.py FastMCP tools (HTTP)
Output: self-contained index.html + imsmanifest.xml + assets + SCORM runtime, zipped.
Issues and PRs welcome. The codebase favors small focused modules, additive changes and backward
compatibility. See CONTRIBUTING.md. Tests: pytest.
Built by edumints.com. SCORM is a trademark of ADL; other product names mentioned are trademarks of their respective owners (nominative use only).
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.