mcpField
E
edumints SCORM MCP

edumints SCORM MCP

リモート
mcp.edumints.com科学・教育92 週間前に更新
リポジトリ公式サイト

edumints SCORM MCP について

edumints SCORM MCPは、構造化されたコース仕様を自己完結型のSCORM 1.2または2004パッケージにコンパイルします。作者やAIクライアントが内容を定義し、サーバーがLLMを実行せずに検証、描画、パッケージ化します。

主な機能

  1. 01構造化仕様からコースを作成
  2. 02コース内容の検証と品質チェック
  3. 03インタラクティブ画面と分岐の作成
  4. 04SCORM 1.2および2004形式でパッケージ化
  5. 05クイズ画面をQTI 2.1にエクスポート
  6. 06音声と動画アセットの追加

活用シーン

  1. 01コース概要をLMSパッケージに変換
  2. 02クイズや分岐シナリオを作成
  3. 03パッケージ化前にコース品質を確認
  4. 04評価プラットフォーム向けに問題を出力

MCP 対応

コース作成、検証、プレビュー、パッケージ化のツールをMCPクライアントに公開します。クライアントが構造化仕様を送信すると、サーバーはダウンロード可能なSCORMパッケージを返し、QTI 2.1へのエクスポートにも対応します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://scorm.edumints.com/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

edumints SCORM MCP

License: MIT Release Python 3.11+ MCP

対話型の、標準準拠のeラーニングコースをコンパイルするMCP サーバーです。 あなた(またはClaudeのようなAIクライアント)が作成者であり、このサーバーがコンパイラーです。 構造化された仕様としてコースを記述すると、サーバーが検証、レンダリング、パッケージ化し、 あらゆるLMS(Moodle、SCORM Cloud、Rustici Engineなど)で動作する 自己完結型のSCORM zipを作成します。決定論的に動作し、サーバー上でLLMは実行されません。

🌐 言語: English · Türkçe · Español · Русский · 简体中文 · Azərbaycanca · Қазақша · Кыргызча

ライブデモ

4つの完全なコースを、4つの対象者と4つのビジュアルアイデンティティで、このサーバーのみを使って作成し、 ライブ環境から配信しています。スクリーンショットをクリックすると起動します。

パスワードヒーローになろう!フィッシングを見抜こう人身攻撃論法Grafik Dedektifi
Password Hero demoSpot the Phish demoAd Hominem demoGrafik Dedektifi demo
9~13歳 · インターネットの安全 · style-playful + カスタムブランド企業向けオンボーディング · メールセキュリティ · style-minimal + 企業ブランド大学院レベル · 議論理論 · style-premiumトルコ語 · データリテラシー · 探究型(5E) · 根拠に基づく評価

各デモには、ストーリーの軸、現実的なアーティファクトのモックアップSVG、フラグ探しのシミュレーション、 ビフォーアフター比較、タイムライン、ケースゲーム、適応型フィードバックが盛り込まれており、基盤には 問題単位のSCORMレポート機能を備えています。

このプロジェクトの目的

eラーニングコースは通常、高機能なデスクトップ作成ツールで手作業で制作されます。このプロジェクトでは、 コース制作をAIエージェント向けのインフラストラクチャとして捉えます。

  • インストール不要で作成。 ホストされたエンドポイントに任意のMCPクライアントを接続すれば、すぐに作成を始められます。 ツールチェーンもローカル環境のセットアップも不要です。クライアントは Model Context Protocolを介して、コース(目標、画面、クイズ、 分岐、メディア)を記述します。サーバーは検証、テーマ設定、アクセシブルなHTMLのレンダリング、SCORMランタイムブリッジ、 パッケージ化という大変な作業を担います。
  • 妥協しない品質ゲート。 AIは質の低いコンテンツをすばやく大量に生成できます。このサーバーはそれを抑制します。 すべての仕様に対するスキーマ検証、エラー段階でビルドをブロックするアンチスロップ lint(lint_course)、 そしてCIの証明チェーン(XSD + 実際のSCORM Cloudへのインポート + 動作プローブ)を備え、 リリースされるものがLMSで実際に動作することを確認します。詳しくは 標準と検証結果をご覧ください。
  • ベンダーロックインなし。 出力は、自己完結型のプレーヤーを含む通常のSCORM 1.2/2004 zipです。MITライセンスで、 セルフホスト可能であり、コントリビューションを歓迎するオープンソースです。

作成者 = MCPクライアント · コンパイラー = このサーバー。

組み込みのスライドステージプレーヤーでレンダリングされたクイズ画面

クイックスタート

オプション 1 — ホスト型 MCP(インストール不要)

任意の MCP クライアント(Claude desktop/web/Code、Antigravity など)から次の URL に接続します。

https://scorm.edumints.com/mcp

OAuth でサインインするか、ポータル https://mcp.edumints.com で API キーを取得してください。 次のように依頼します:「X に関する、クイズと要約付きの 6 分間のインタラクティブなコースを作成してください。」 — ダウンロード可能な SCORM zip が返されます。

オーサリングスキルと併用すると最も効果的です(このサーバーを使って高品質なコースを作成する方法を AI クライアントに教える Claude Agent Skill です)。 https://github.com/kemalyy/edumints-scorm-skill

オプション 2 — Docker(セルフホスト)
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

このイメージには、すべてのオプション機能(動画用の ffmpeg、Node と HyperFrames、Piper TTS)が含まれています。

Apple Silicon + Docker Desktop: コンテナが Illegal instruction(SIGILL)でクラッシュする場合、これは cryptography の Rust バインディングにおける上流のネイティブ ARM64 の問題です (pyca/cryptography#14733。このリポジトリの問題ではありません)。 回避策:--platform linux/amd64 を指定して実行します(エミュレーション)。

オプション 3 — ローカル(Python)
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

動画を生成する場合は、HyperFrames(npm i -g hyperframes)を含む Node 22 以降と ffmpeg もインストールしてください。 設定:.env.example をコピーして、必要に応じて編集します(データディレクトリ、クォータ、ベース URL、TTL)。ローカルで実行するためにシークレットは不要です。

例

コースは、単一の build_from_spec 呼び出しで作成されます(これは examples/small.json の抜粋です)。

{
  "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/

完全に動作する仕様は examples/ にあります(ゲーム、分岐、テーマ別、i18n のコース)。

機能

  • 46 個の MCP ツール — build_from_spec(単一呼び出しのパス)、細かな編集 (create_project / add_screen / update_screen / …)、set_theme / set_tracking、 add_asset(SSRF 対策済みのインポート)、synthesize_speech(オフラインの Piper TTS)、動画ツール (ffmpeg / HyperFrames のモーショングラフィックス)、preview / validate_package / build_package、 lint_course(品質ゲート)、export_qti(QTI 2.1)、list_compositions / set_composition / set_screen_composition。
  • 構成システム — 新しいコースにはそれぞれ、意図的な焦点、強調の階層 (E1–E5:kicker、lead、<mark>)、および JSON パターンカタログ(3 分割法、Z/F 型の視線誘導、コースのリズム)から選ばれた、バランスの取れた対称/非対称レイアウトが設定されます。任意の自由なグリッドも選択でき、31 種類すべての画面タイプで利用できます。コースの作成中に、サーバーは重要な判断事項を質問します(composition_questions)。質問/投票/分岐では、アプリケーションレベルの評価に任意の事例(stimulus)を指定でき、タブはマスター・詳細表示になり、ゲームシーンは横並びになります。新しいデフォルトパレット mint(ink、slate も利用可能)と、埋め込みの OFL フォントを追加しました。既存のコースは変更なく表示されます。
  • 31 種類の画面タイプ — タイトル、コンテンツ、多肢選択問題、正誤問題、穴埋め問題、ドラッグ&ドロップ、ホットスポット、分岐シナリオ、動画、アコーディオン、タブ、フラッシュカード、マッチング、並べ替え、タイムライン、lottie、ソフトウェア操作ガイド、意思決定シナリオ、用語マッチングレース、脱出ゲーム、ラベル付き図、データチャート、画像比較、結果の内訳、投票/振り返り、まとめ、構成可能なゲーム、適応型練習、解説付き例題、探索、埋め込み HTML(アーティファクト→SCORM)。 詳細なリファレンス:docs/SCREEN_TYPES.md。
  • 構成可能なゲームエンジン — game 画面では、ゲームの仕組みを構成する基本要素(スコア/ライフ/タイマー/ヒント)と、宣言型の when event if condition then action ルール、および分岐ノードを組み合わせます。adaptive_practice は習熟度を推定し(Elo またはベイズ知識追跡)、学習者ごとに難易度を調整します。docs/GAME-PATTERNS.md を参照してください。
  • スライドステージプレーヤー — すべての画面に合わせて拡大縮小される固定 16:9 ステージ、プレーヤーバー (再生/シークバー/字幕/メニュー/リプレイ)、ナレーションに同期したタイムライン、セクションごとにまとめられたメニュー、完全なレスポンシブ対応、インライン SVG アイコン。RTL 対応の i18n シェル(tr/en)。
  • 実際の SCORM トラッキング — cmi.interactions(問題単位のレポート)、cmi.objectives、 adlcp:masteryscore(1.2)/completionThreshold(2004)、LOM メタデータ、および再開状態を保持するコンパクトな suspend-data v2 エンコーディング。
  • テーマ設定 — スタイルプリセット(style-minimal / style-playful / style-premium など)にブランドトークンを重ねて設定できます。1 つのスタイルで、さまざまなブランドに対応します。ライト/ニュートラル/ハイコントラストのプリセット、WCAG を考慮した設計、prefers-reduced-motion に対応しています。
  • 品質ゲート — 低品質なコンテンツを防ぐリンター(ブロッキングエラーの段階あり)に加え、ゲームのアクセシビリティ監査を実施します。
  • メディア — MCP 間でのアセットインポート(data-URI または https による add_asset)、ffmpeg による処理、プログラムで作成するモーショングラフィックス/データ可視化動画(HyperFrames)、組み込みのオフライン対応トルコ語 TTS(Piper)。
  • テレメトリ — プレーヤーからの任意の xAPI ステートメントに対応します。cmi5 は一部対応(起動検出のみ。cmi5.xml のパッケージ化には未対応です)。docs/GAME-XAPI.md を参照してください。
  • QTI 2.1 エクスポート — クイズ画面を QTI assessmentItem としてエクスポートし、評価プラットフォームとの相互運用を可能にします。docs/QTI.md を参照してください。
  • SCORM 1.2 および 2004、決定論的なパッケージ化、コスト制限、重い機能のオプトイン/遅延読み込み。

規格とエビデンス

主張するのは簡単ですが、このリポジトリではCIでその証拠を示しています。

  1. XSD準拠 — 生成された imsmanifest.xml ファイルを、SCORM 1.2と2004の両方について、公式のADL/IMSスキーマに照らして検証します(tests/test_conformance.pyで自動実行)。
  2. SCORM Cloudでの実際の往復テスト — CIでは、REST APIを介してビルドしたパッケージを実際のSCORM Cloudにインポートします。4つの組み合わせすべて(small/rich × 1.2/2004)で、パーサー警告が0件の状態でインポートでき、起動可能な登録が作成される必要があります。これは必須のゲートであり、参考チェックではありません。
  3. 動作プローブ — scorm-probeは、ビルドしたコースを実際のChromiumで偽のLMSに対して起動し、実行時の動作(初期化、ナビゲーション、採点、完了)を検証します。これもCIの必須項目です。チェックが何もせずスキップされた場合、ビルドは失敗します。

詳細、手順、制限事項については、docs/CONFORMANCE.mdをご覧ください。 アクセシビリティ:制限事項を明示して文書化したWCAG 2.2 AA適合性声明 — docs/ACCESSIBILITY-CONFORMANCE.md。

公式ソース

このプロジェクトの公式配布チャネルは以下のみです。

チャネルURL
ソースリポジトリhttps://github.com/kemalyy/edumints-scorm-mcp
オーサリングスキルhttps://github.com/kemalyy/edumints-scorm-skill
コンテナーイメージghcr.io/kemalyy/edumints-scorm-mcp
ホスト型MCPエンドポイントhttps://scorm.edumints.com/mcp
アカウントポータルhttps://mcp.edumints.com

それ以外のもの(ミラーリポジトリ、再アップロードされたzip、PyPI/npmパッケージ、その他のレジストリやドメイン)は、すべて非公式で未検証です。現在、PyPIやnpmのパッケージは公開していません。類似したものを見つけた場合は、SECURITY.mdからご報告ください。

ドキュメント

ドキュメント内容
docs/SCREEN_TYPES.md31種類すべての画面タイプとフィールド、例
docs/CONFORMANCE.mdSCORM準拠のエビデンスと手順
docs/ACCESSIBILITY-CONFORMANCE.mdWCAG 2.2 AA声明
docs/LMS-INTEGRATION.mdLMS固有の統合に関する注意事項
docs/QTI.mdQTI 2.1エクスポート
docs/GAME-PATTERNS.mdゲームエンジンのパターン
docs/GAME-ADAPTIVE.md適応型練習(Elo/BKT)
docs/GAME-ANTISLOP.md低品質コンテンツを防ぐ品質ゲート
docs/GAME-XAPI.mdxAPI/cmi5テレメトリー
docs/GAME-A11Y.mdゲームのアクセシビリティ
docs/ARCHITECTURE.mdシステムアーキテクチャ

アーキテクチャ

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)

出力:自己完結型の index.html + imsmanifest.xml + アセット + SCORMランタイムをzip形式にしたものです。

貢献

IssueやPRを歓迎します。コードベースでは、小さく焦点を絞ったモジュール、追加的な変更、後方互換性を重視しています。CONTRIBUTING.mdをご覧ください。テスト:pytest。

ライセンス

  • このプロジェクト:MIT — LICENSE。
  • ベンダーとして同梱されているサードパーティコンポーネント(scorm-again、lottie-web):THIRD_PARTY_NOTICES.md。

**edumints.com**が開発しました。SCORMはADLの商標です。記載されているその他の製品名は、それぞれの所有者の商標です(名称を指し示す目的でのみ使用)。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。