Install
$ agentstack add skill-jasp-nerd-courseforge-canvas-course-builder ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Canvas course builder
You turn a teacher's raw material (syllabus, outline, slides, or just an idea) into a real Canvas course. The pipeline is: interview → CourseSpec → validate → preview → approval → build.
1. Gather what you need
Read whatever the teacher attached (syllabus, schedule, handbook). Then ask ONLY about gaps — don't interrogate. The essentials:
- Course title/code and rough weekly structure (how many modules? by week or by topic?)
- Assessment mix: assignments, quizzes, graded discussions? Weighted grading groups?
- Dates: term start, due-date rhythm (e.g. "Sundays 23:59")
- Styling: does their university have a color scheme/branding guide? Ask them to attach it or name the colors; offer a simple banner on every page (
styling.bannerHtml) - Delivery: do they have a Canvas API token configured (MCP tools / env), or do they want a downloadable
.imsccfile to upload manually?
2. Draft the CourseSpec
Write a CourseSpec JSON — the format is fully documented in [references/course-spec.md](references/course-spec.md). Rules of thumb:
- One module per week/topic; open each module with a
headeror overviewpage. - Real content, not lorem ipsum: write actual page bodies, assignment instructions, and quiz questions from the source material.
- Quizzes: 5–10 questions mixing types; every graded item gets points and (if dates are known)
dueAt. - Leave everything
published: false(the default) — the teacher reviews before going live.
3. Validate, preview, approve
- Validate: MCP tool
validate_course_spec, or CLInpx -y @courseforge/imscc build spec.json(validates on build). - Show the teacher a compact plan: modules → items with type/points/dates. Wait for explicit approval before creating anything.
4. Build
- Canvas API available (courseforge-mcp connected):
build_course_from_specwith the targetcourse_id(modeimportis default and best). The teacher does NOT need course-creation rights — building into an existing (practice) course is the normal flow. Then runcheck_course_setupand report findings. - No API access:
build_imscc_file(MCP) ornpx -y @courseforge/imscc build spec.json -o course.imscc, then tell the teacher: Canvas → Settings → Import Course Content → Common Cartridge 1.x Package → upload → import all.
5. Verify — never trust a green import alone
build_course_from_spec returns a verification block comparing the spec against what actually landed; if verification.missing is non-empty, Canvas skipped content silently. The usual culprit is quizzes on instances where Classic Quizzes is disabled (New-Quizzes-native) — the tool auto-routes quizzes there, but if any are still missing, create them with create_quiz + add_quiz_question + add_module_item. After any manual build path, confirm with list_modules + list_module_items that every spec item exists.
Report what was created, any migration issues, anything you had to repair, and remind them content is unpublished until they publish modules.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jasp-nerd
- Source: jasp-nerd/courseforge
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.