
CourseCode Framework
io.github.course-code-frameworkPublished by GitHub account course-code-frameworkv0.4.5Updated Nov 7, 2026
Preview, screenshot, lint, and test SCORM, cmi5, and LTI courses built with CourseCode Framework.
Overview
Local MCP server for CourseCode Framework that lets an assistant preview, screenshot, lint and test SCORM, cmi5 and LTI courses it builds.
- What you can do
- Preview and screenshot slides to check layout and design
- Lint generated course code and catch errors automatically
- Navigate and test interactions in the course
- Browse the component catalog of available UI elements
- Read course state, including engagement, scoring and LMS data
- When to use it
- Useful when building or modernizing LMS courses with an AI tool and you want the assistant to verify its own slides, interactions and tracking instead of pasting files into chat. It fits projects that will be exported as SCORM 1.2, SCORM 2004, cmi5 or LTI 1.3 packages.
- Requirements
- Runs as a local process on the user's machine via the npm package coursecode (stdio), started with the coursecode mcp command; new projects include MCP settings for Claude Code, Codex, Cursor and VS Code. Requires Node.js 22.15 or later. No account or API key is needed for the framework itself.
Installation
In SourceWeft
- Open CourseCode Framework in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
CourseCode Framework
Build LMS courses with Claude Code, Codex, or any AI tool that supports MCP.
CourseCode Framework is open source and runs on your computer. Your AI tool writes the course as regular project files you can inspect, version, and edit. CourseCode's MCP server lets it preview, screenshot, lint, and test what it built. Export SCORM 1.2, SCORM 2004, cmi5, or LTI 1.3.
Start from a topic or from your own PDFs, Word documents, and PowerPoint decks. No coding is required to start, and you have full control of the code when you want it.
View the demo
CourseCode ecosystem
CourseCode Framework (this repository) is open source and works on its own. CourseCode Cloud is an optional paid hosting service for deploying and delivering courses.
Framework documentation lives at coursecodeframework.com/docs and in framework/docs/.
Features
- Works with your AI tool: Every new project includes MCP settings and workflow skills for Claude Code, Codex, Cursor, and VS Code. Any other MCP client can run
coursecode mcp, and an optional plugin is available for Claude Code and Codex - No coding required to start: Describe what you want and let AI help build slides, interactions, and structure
- Course modernization: Use existing SCORM courses, PowerPoints, PDFs, Word docs, scripts, and SME notes as source material for upgraded courses
- LMS integration: SCORM 1.2, SCORM 2004, and cmi5 packaging, plus an LTI 1.3 browser contract for trusted server-backed launches
- Rich UI components: Images, video, accordions, tabs, and custom sandboxed HTML/JS embeds
- Rich interactions: Multiple choice, drag-drop, fill-in-the-blank, matching, sequencing, and more
- Accessibility: Designed to meet WCAG 2.1 AA, with dark mode, high contrast, and reduced motion
- TTS audio narration: Built-in player with AI text-to-speech generation (Deepgram, ElevenLabs, OpenAI, Google Cloud, or Azure, using your own API key)
- Smart tracking: Engagement requirements, learning objectives, and progress persistence
- Themeable design: CSS custom properties for easy brand customization
- Custom endpoints: Optional webhooks for error reporting and learning record storage
- Live preview: Visual editing, status dashboard, config panels, catalog browser, and full LMS simulation with debug tools
Quick Start
You need Node.js 22.15 or later and an AI tool that can run commands, such as Claude Code, Codex, Cursor, or VS Code with GitHub Copilot. Your AI tool can install Node.js for you.
-
Create an empty folder for your course and start your AI tool in it.
-
Paste this:
-
When it's done, quit your AI tool and start it again in the same folder so it loads the CourseCode tools. Claude Code asks once to approve the
coursecodeserver; Codex asks you to trust the folder. -
Describe the course you want.
-
When the course is ready, ask your AI tool to export it for your LMS (SCORM 1.2, SCORM 2004, cmi5, or LTI 1.3), or to deploy it to CourseCode Cloud for hosting, share links, and analytics. Cloud is optional.
The project includes MCP settings for Claude Code, Codex, Cursor, and VS Code, an AGENTS.md with the authoring workflow, and four workflow skills (outline, build slides, review, publish). Nothing else needs installing, and no account is required.
Without an AI tool
Open http://localhost:4173 to view and edit your course. The example course included with every new project is a complete guide to using CourseCode.
Claude Code and Codex plugin (optional)
The plugin runs the CourseCode tools in every folder, so your AI tool can start a course before a project exists. You don't need it, because projects already include the tools and skills. Install it from this repository:
See plugin/README.md. Start with the User Guide for a complete walkthrough.
Requirements
Node.js 22.15 or later. You can run every command through npx coursecode, or install the CLI globally for the shorter coursecode command used in the rest of this guide:
Learner courses support Chrome 111+, Edge 111+, Firefox 114+, and Safari 16.4+. SCORM compatibility describes LMS communication and packaging; it does not imply Internet Explorer support.
Also recommended:
- A code or text editor, such as VS Code, Cursor, or similar
- An AI coding tool with MCP support, such as Claude Code, Codex, Cursor, or VS Code with GitHub Copilot
- GitHub Desktop for version control
MCP Integration
CourseCode includes a built-in Model Context Protocol (MCP) server. When your AI tool supports MCP, it connects directly to your course project, so you don't have to paste files into a chat.
New projects already include MCP settings for Claude Code (.mcp.json), Codex (.codex/config.toml), Cursor (.cursor/mcp.json), and VS Code (.vscode/mcp.json), plus workflow skills in .claude/skills/ and .agents/skills/. To add them to an existing project, run coursecode agent-setup. Any other MCP client can start the server with:
Run from a global install or npx, the server hands off to the project's own CourseCode version.
With MCP, your AI can:
- Preview and screenshot slides to verify layout and design
- Lint its own code and catch errors automatically
- Navigate and test interactions directly
- Browse the component catalog to discover available UI elements
- Read course state including engagement, scoring, and LMS data
See the User Guide for setup instructions.
The Course Directory
All your course content lives in the course/ folder:
Your Course
Key Documentation
All guides are in framework/docs/:
AI-Driven Authoring Workflow
Four steps to go from source materials to a course ready for your LMS.
Step 1: Convert Your Source Materials
Place existing content (PDFs, Word docs, PowerPoints) in course/references/, then run:
Converts to markdown in course/references/converted/. Skip this step if starting from scratch.
Step 2: Create Your Course Outline
Ask your AI to create a course outline based on your content.
- With MCP: The AI reads your references and outline template automatically
- Without MCP: Share your converted docs,
COURSE_OUTLINE_TEMPLATE.md, andCOURSE_OUTLINE_GUIDE.mdwith your AI
Review and refine the outline before building.
Step 3: Build the Course
Ask your AI to build slides from your approved outline.
- With MCP: The AI reads all docs, lints its code, and screenshots slides to verify
- Without MCP: Share your outline and
COURSE_AUTHORING_GUIDE.mdwith your AI
Step 4: Preview, Iterate, and Export
The preview server provides:
- Live reload: Changes appear instantly
- Visual editing: Click elements to edit content directly
- Status dashboard: Course health, errors, and build status at a glance
- Config panels: Adjust settings, interactions, and assessments
- Component catalog: Browse available UI elements with live previews
- Debug tools: Inspect LMS state, test interactions, verify tracking
When it's ready, build a package and upload it to your LMS. The ZIP is written to your project folder:
Other ways to share it:
-
One file, no server: a portable HTML course that recipients open by double-clicking. Progress is saved in that browser only.
-
Review site: a static copy of the preview for GitHub Pages, Netlify, or any static host.
-
Hosted delivery (optional): CourseCode Cloud is a paid hosting service for CourseCode courses.
coursecode deployuploads one build; Cloud then serves it, provides a shareable preview link, and generates any LMS format on demand. See CourseCode Cloud in the user guide.
Core Commands
For the full command list and sharing options, see the User Guide or run coursecode --help.
UI Components
Build engaging slides with interactive elements. Start with AI assistance, then edit the generated files directly whenever you want more control.
Media & Widgets
Slide Templates
Pre-designed layouts for common slide types. Just tell your AI assistant what you need.
Interaction Types
Practice activities that engage learners and check understanding.
All interactions provide immediate feedback and can be required for slide completion.
Tracking & Scoring
Engagement
Require learners to complete activities before advancing:
- View all tabs or accordion panels
- Complete interactions
- Watch video or listen to audio
- Spend minimum time on slide
Gating
Lock slides until conditions are met:
- Pass an assessment
- Achieve a learning objective
- Spend a minimum time on a slide
- Set a custom flag, for example after a branching choice
Assessments
Graded quizzes that determine course completion:
- Randomized question order
- Question banks for variety
- Configurable passing scores
- Retry attempts with remediation
- Scores reported to your LMS
Learning Objectives
Track learner progress against defined goals:
- Automatic: track when slides are visited
- Linked: tie objectives to assessment scores
- Reported: completion status sent to LMS
Learn More
The User Guide covers everything in detail:
- Using the preview and visual editing tools
- All interaction types (multiple choice, drag-drop, matching, and more)
- Assessments and grading
- Audio and video
- Theming and branding
- Navigation and learner flow control
- Exporting and sharing options
- Troubleshooting
License
MIT © Seth Vincent
Source: README.md at commit ef569ca
Tools
0Version history
3- v0.4.5LatestNov 7, 2026
- v0.4.4Oct 30, 2026
- v0.4.3Oct 30, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts