- Category
- Education
- Primary Subcategory
- Online Course Marketplaces & Skill Platforms
Integration details
Description
Create and manage courses in your Mini Course Generator account. Draft modules and lessons, publish them for learners, organize course content, and review learner progress and quiz responses. You can also import media and manage course access for learners.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Online Course Marketplaces & Skill Platforms
- Secondary Subcategories
- None listed
- Access
- Account required
- First tracked
- 2026-10-07
- Tool count
- 46
- Market
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Your score is coming
ChatGPT now suggests Plugins on its own when they match a user's request.Your Plugin Discovery Score measures how often yours appears, and it will show here as soon as it’s ready.
What discovery looks like

Get alerts for Mini Course Generator
Get updates when Mini Course Generator’s Discoverability Score or category rank changes.
Competing in ChatGPT Online Course Marketplaces & Skill Platforms
View Category46 tools agents can invoke
Add a learner to a Learning path's default team (learningPathId, a GUID) in the connected account, creating a learner account if needed. Supply email and/or username; username defaults to email. This grants team-based access to the learning path and its courses without changing its access rule. By default no email is sent. sendInvite: true also emails the learner the learning path's invite (its saved invite subject and body, with their personal sign-in link) — this emails a real person, so confirm with the user before setting it. Returns accountCreated, alreadyMember, and errors; a non-empty errors list means enrollment failed. With sendInvite, inviteSent and inviteError report the email; a learner invited in the last 10 minutes is not emailed again. Existing membership is not duplicated.
learning_path_learner_add
Add the default completion-certificate configuration to a Learning path (learningPathId GUID) in the connected account, or return its existing configuration. New certificates use the default 85% success threshold, adjustable in the MCG admin interface. This configures learning-path-level certificate eligibility; it does not issue or email a certificate to a learner during this call.
learning_path_add_certificate
Return the Mini Course Generator authoring guide: the content hierarchy (Learning path → Course → Section → Page), the Course YAML spec, page content blocks, quiz fields, landing-page copy, and media requirements. Use when preparing input for course_push, page_create, page_update, or learning_path_create with landingPage. Does not create content.
get_content_format
Retrieve aggregate analytics for one Course (integer courseId) in the connected account: assigned, engaged and completed learners, badges, and mean quiz score. Returns counts and aggregate scores without learner identities or individual answers. For a whole Learning path (GUID) use learning_path_analytics.
course_analytics
List learners who completed a Course (integer courseId) in the connected account, with identity, progress, quiz score, and start/finish times. Optional from filters by completion date. Paginated: default 20 rows, maximum 100. Contains learner personal data.
course_finishers
Create an empty draft Course inside an existing Learning path in the connected account. Hierarchy: Learning path → Course → Section → Page; a Course holds Sections, which hold Pages. learningPathId is the parent's GUID; the result's id is the new courseId (an integer). Use course_push to create a Course with its Sections and Pages together from YAML. Learners cannot access the course until it is published. Optional description is saved in a follow-up update; descriptionWarning reports a failure of that update. Each call creates another course.
course_create
Create a new draft Course with its Sections and Pages from a kind: Course YAML spec (apiVersion: mcg.io/v4). Optional spec.landingPage supplies landing-page content; learningPathId (a GUID) overrides the spec's spec.learningPathId as the parent Learning path. Image prompts and landing-page covers can trigger external image generation; page images and generated covers consume MCG AI credits (with insufficient credits the landing page is saved without a cover). Third-party image urls (image blocks, quiz images, landing covers) are copied into MCG storage first, without credits. The course requires course_publish for learner access. dryRun validates and renders page content locally without creating resources or generating images. Normal calls create another course on every retry and may leave partial content if a later step fails. Returns the new courseId (an integer). Optional description is saved separately; failures appear as descriptionWarning. See get_content_format for the spec.
course_push
Create a new Learning path (the top-level program that groups Courses) in the connected MCG account with a default landing page and public-link access. The learning path landing page can be viewed by anyone with its link; Courses are created inside it separately as drafts (course_push or course_create). Optional landingPage YAML supplies custom copy and triggers background cover-image generation through MCG's image provider, unless coverImageUrl or the YAML's cover_image.url names an existing image, which is used as-is with no generation or credits (a third-party image url is first copied into MCG storage). A generated cover consumes MCG AI credits at the page-image rate; if credits are insufficient the landing page is saved without a cover. Returns id (the new learningPathId, a GUID) and previewUrl. Each call creates another learning path, and a later landing-page failure can leave the learning path created. See get_content_format for the YAML format.
learning_path_create
Create a new draft info or quiz Page in an existing Course (integer courseId) and Section (sectionId GUID from course_get). Info content uses a content: YAML document; quiz content requires question and choices. See get_content_format. Image prompts trigger background generation through MCG's image provider and consume MCG AI credits; third-party `url:` images are copied into MCG storage without credits. Returns the new pageId (an integer). Learner access requires publishing; each call creates another page.
page_create
Add a new Section to an existing Course (integer courseId) in the connected account. Sections group Pages within a Course; section ids are GUIDs. Section structure is not held as a draft, so it can change the outline of a published course immediately. Each call creates another section.
section_create
Delete a hosted SCORM package and its files. Any page referencing the packageId, including a live page, will no longer be able to load the activity. This tool provides no restore operation. Use scorm_replace when the request is to update an existing package instead.
scorm_delete
Delete a Course (integer courseId) in the connected account together with its Sections and Pages. Removes it from learner access if published. Content cannot be restored through this tool.
course_delete
Delete a Page (integer pageId) from the connected account. Removes the page from learner access if published. Its content cannot be restored through this tool.
page_delete
Delete a Section (sectionId, a GUID) and its Pages from a Course in the connected account. Removes that content from learner access if published. The deleted content cannot be restored through this tool.
section_delete
Discard a Page's unpublished edits (integer pageId) and restore its published version as the working copy. Removes draft content, newly added draft options, and pending option/setting changes without an undo operation. Intended for a page with published_with_changes status; does not unpublish its live version.
page_discard_changes
Email a Learning path's invite (learningPathId, a GUID) to learners already on it in the connected account, using its saved invite subject and body; each learner gets their own sign-in (magic) link. This emails real people — confirm the recipients with the user before calling. Pass up to 20 emails or usernames. Learners not on the learning path are skipped (add them with learning_path_learner_add first), as are learners without an email address and anyone invited in the last 10 minutes. onlyNotYetInvited (default true) also skips anyone ever sent this invite; set it false to resend. Returns sent and skipped (with a reason for each). Does not change access.
learning_path_learner_invite
Retrieve a Course (integer courseId) in the connected account with its Sections and Pages: sectionIds are GUIDs, pageIds are integers. Returns course and per-page publish status (draft, published, or published_with_changes), pendingPageCount, its parent learningPathId, and authored content. Use to inspect structure or pending changes before editing or publishing.
course_get
Retrieve a Page (integer pageId) in the connected account, including its title, type, sectionId, and rendered HTML body in text. Does not return the original authoring YAML. Use course_get for publish status and page_selections for authored quiz options.
page_get
Retrieve a quiz or survey Page's authored options (integer pageId), including each option's ID, text, and correct-answer flag. Does not return learner responses; use course_answers for one learner's answers.
page_selections
Download an existing SCORM 1.2 ZIP package from the supplied public URL and host it on MCG. Accepts a staged downloadUrl from media_upload_url. Does not author the activity or ZIP. Returns packageId, entryPointUrl, title, version, and fileName for a page scorm block. Each call creates a new hosted package; it does not publish a page. See get_content_format for package requirements.
scorm_upload
Download an audio file from the supplied public URL and host it on MCG storage. Accepts a staged downloadUrl from media_upload_url. Returns documentId and a durable url for a page audio block. Optional replaceId overwrites an existing audio document at the same hosted URL, affecting every page that uses it, including live pages. Without replaceId each call creates a new document. Supported extensions include mp3, wav, ogg, flac, aac, m4a, mp4, and wma.
audio_upload
Download an image from the supplied public URL and host it on MCG storage, adding it to the Media Library. Accepts a staged downloadUrl from media_upload_url. Returns imageId and a durable url to use as a page image block's url (instead of prompt): the image is placed as-is, with no AI generation and no AI credits. Each call creates a new image. Supported formats: png, jpg, gif, webp, svg (sanitized: scripts and external references are removed), tiff, and ico. Tools that take an image url copy third-party urls into MCG storage on their own; use this for local files or to get the url first.
image_upload
Import a video from a publicly reachable file URL into MCG's Vimeo hosting account. Vimeo fetches the supplied URL and transcodes the video asynchronously. Accepts a staged downloadUrl from media_upload_url after the file has been uploaded. Returns shopClipId, clipId, and playerUrl; use shopClipId in a page video block. Playback may not be ready when the call returns. Each call creates a new hosted video; it does not publish a page.
video_upload
Retrieve one learner's per-question responses in a Course (integer courseId), including quiz pages and supported activity blocks (crossword, wordle, word search, riddle, jumble, pixel quest, and SCORM). Returns selected options or text answers and grading where available; source and blockType identify the activity. isCorrect: null means ungraded or unanswered, not an incorrect answer. SCORM responses can lack question text. Contains learner personal data from the connected account.
course_answers
Retrieve one learner's learning-path and per-course progress in the connected account, including scores, completion times, and certificate state. startedOnly excludes assigned learning paths the learner has not opened. Accepts email, username, or an anonymous session identifier returned by learner_list. Contains learner personal data.
learner_get
Retrieve aggregate analytics for a Learning path (learningPathId, a GUID) in the connected account: assigned, engaged and completed learners, certificates, badges, and mean quiz score. Optional courseId (an integer) narrows the report to one Course. Returns counts and aggregate scores without learner identities or individual answers. Public learning paths have no enrollment roster; use these engagement figures for their reach.
learning_path_analytics
List learners who completed a whole Learning path (learningPathId, a GUID) in the connected account, with identity, mean score, completion time, and certificate URL when issued. Optional from filters by completion date. Paginated: default 20 rows, maximum 100. Contains learner personal data.
learning_path_finishers
List a Learning path's enrolled learners (learningPathId, a GUID) with identity, progress, score, certificate state, and last activity. Paginated: default 20 rows, maximum 100. Public learning paths have no enrollment roster and return no rows with an explanatory note; this does not mean nobody viewed them. Use learning_path_analytics for engagement. Contains personal data from the connected account.
learning_path_learners
List the Courses in an existing Learning path (learningPathId, a GUID) in the connected account, including each course's id (courseId, an integer), name, section/page counts, and publish status. Use learning_path_list first to find learning paths, and course_get for the Sections, Pages, and pending edits within one course.
course_list
List learners across learning paths in the connected account with identity and counts of learning paths enrolled, started, and completed. search matches name, email, or username; completedOnly and registeredOnly narrow the results. Paginated: default 20 rows, maximum 100. Anonymous public-link learners have a session identifier and no name or email. Contains learner personal data.
learner_list
List the Learning paths in the connected MCG account. Hierarchy: Learning path → Course → Section → Page; a Learning path is the top-level program that groups Courses. Each item's id is a learningPathId (a GUID) for course_list, course_create, and the learning_path_* tools. Returns a page of items with totalCount and hasNextPage; default page size is 20, maximum 100. Retrieve further pages when the requested result requires all learning paths.
learning_path_list
Replace a Page's saved order within its Course and optionally its Section assignment within the same course. pageId and courseId are integers; sectionId is a GUID. Lower order values come first. These structural changes apply immediately to a published course; they do not wait for page_publish.
page_move
Publish a Course (integer courseId) and every Page inside it, including all pending page edits. Pending edits overwrite the previous live content and can remove quiz options; this tool does not retain the previous version. Learners gain access under the learning path's access rules, including anyone with the link for public learning paths. Returns publish state and published page count. Repeating the call refreshes the publication timestamp. Use for a request to make the entire course live.
course_publish
Publish one Page (integer pageId) or apply its pending edits to the live version. Overwrites previous live content and can remove quiz options without retaining the prior version. Learners can see it only if its Course is also published, under the learning path's access rules (public learning paths allow anyone with the link). Use for a request to make this page or its edits live.
page_publish
Remove a learner from every team granting access to a Learning path (learningPathId, a GUID) in the connected account. Revokes team-based access and can also remove access to other learning paths shared by those teams. Does not block public-link access to public learning paths. Retains the learner account, progress, and certificates; re-adding to this learning path does not restore all prior team memberships. Returns removed: false when no matching membership exists. Does not send email.
learning_path_learner_remove
Replace a Section's title (sectionId, a GUID) in the connected account. Section titles are not held as drafts; the new title can appear immediately in a published course.
section_update
Change a Course's zero-based position within its Learning path. Other courses retain their relative order and shift around it. This replaces the saved ordering and can immediately change the sequence shown to learners. Use course_list to inspect the current order.
course_move
Download a replacement SCORM 1.2 ZIP from the supplied public URL and overwrite an existing hosted package, retaining its packageId. Every page referencing that package, including live pages, uses the replacement without a separate page edit or publish step. Existing package files are replaced; this tool provides no rollback. Repeating the call downloads and processes the source again, which may have changed.
scorm_replace
Replace supplied Course theme settings (integer courseId): layout, typography, colors, and optional background image URL. Omitted settings remain unchanged. Theme changes apply immediately to a published course; learner browsers load the supplied background image URL. Use get_content_format for styling individual page content blocks instead.
course_theme
Issue temporary signed upload and download URLs for a new file location on MCG storage (about two hours). Grants a temporary upload capability but does not upload file bytes or host a finished media asset. A client capable of HTTP PUT must upload the bytes to uploadUrl using the matching contentType before passing downloadUrl to video_upload, audio_upload, image_upload, or scorm_upload. Returns key, contentType, and expiresAt as well as the URLs. Each call issues URLs for a new location.
media_upload_url
Unpublish a Course (integer courseId) and revoke learner access to it immediately. The learner preview link stops working. Content and progress are retained so the course can be published again. Use for a request to take the whole course offline.
course_unpublish
Unpublish one Page (integer pageId) and revoke learner access to it immediately, while leaving the rest of its Course unchanged. Retains its content, pending edits, ID, and progress records so it can be published again.
page_unpublish
Replace a Course's name, description, cover image, and/or learner-interface language. courseId is an integer; to edit a Learning path (GUID) use learning_path_update. At least one non-empty field is required; omitted fields remain unchanged. coverImageUrl takes an image_upload url or any public image url (a third-party image is copied into MCG storage first); it replaces the cover, landing-page header image, and thumbnail without generating one. Language resets interface labels to that language's defaults, including previously customized labels, and does not translate page text. These settings can change immediately for learners of a published course.
course_update
Replace an existing Learning path's name, description, and/or cover image in the connected account. learningPathId is a GUID. Only supplied non-empty fields change; at least one is required. coverImageUrl takes an image_upload url or any public image url (a third-party image is copied into MCG storage first); it replaces the cover, landing-page header image, and thumbnail without generating one. Changes can appear immediately on its public landing page. Does not edit landing-page body copy. To edit a Course (integer courseId) use course_update.
learning_path_update
Edit a Page's title, its entire body, or a quiz's question and choices (pageId is an integer). At least one non-empty field is required. For an info page, content is an MCG content: YAML document that replaces the whole body. For a quiz page, content is the same YAML page_create accepts (question: and/or choices:, each choice a text: with correct: true on the right one); omit question: or choices: to keep it. choices: is the complete new list, matched to the existing options by position: option ids (and learners' past answers) are preserved, extra choices are added and surplus options removed; returns each option with its status. A content: body sent to a quiz, or content that compiles to an empty body, is rejected rather than overwriting the question. On published pages, text, question and answer-key edits remain pending until page_publish. Image prompts also trigger external image generation, consume MCG AI credits, and can modify the stored live image body. Repeating image-bearing updates can generate and charge again. Third-party `url:` images are copied into MCG storage (no credits). **Keep existing images:** read the page with page_get first and write each image you are keeping as `url: <its img src>` instead of `prompt:` — a `url:` image is placed as-is, never regenerated. Use `prompt:` only for an image that is new or that the user asked to replace. See get_content_format for the content format.
page_update
Return the authenticated Mini Course Generator account's user ID, email, the connected workspace's ID and name, the workspaces the account can connect to, and granted scopes. Use to check which account and workspace is connected; no account settings are changed.
whoami
Mini Course Generator ChatGPT Plugin FAQ
How the directory, categories and Discoverability Score work.
Read the methodologyHow do I improve Mini Course Generator's ChatGPT Plugin discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Mini Course Generator alternatives on ChatGPT?
As of 2026-11-02, Mini Course Generator competes with Articulate, Articulate EU, Boluda, Certifier, Cluelabs Content Studio, Coursera Learning, DataCamp, edX and 14 more in ChatGPT Online Course Marketplaces & Skill Platforms, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.