← Plugin catalog
Education & Research

Cluelabs Content Studio

eLearning Company, Inc. v1.0.12

Elearning course design tools

Full description ↓

View on ChatGPT ↗

Save this plugin to Following and return to review observed changes. Follow up to 10 plugins free.

Description

From the marketplace listing

Use Cluelabs Content Studio to work with elearning course projects, storyboards, slides, style guides, narration, captions, graphics, music, sound effects, and other course media.

Language: English · Automatically detected from descriptions.

Competitor profile

From the developer’s listing and package; capabilities are not independently tested. Package observed Nov 2, 2026.

Declared capabilities

  • storyboarding
  • elearning storyboard writing
  • learning activities planning

Declared limitations

Specific limitations have not been established. Missing information does not mean unrestricted capabilities.

Cost & access

The plugin does not sell products or process payments. Media generation may use account credits.

Terms may have changed since this observation.

Starter prompt

Help me create a course about...

View package source →

Keywords

Files & skills

File archives

Plugin package6 files · 47.5 KBBrowse files →
Skill instructions
content-studio5.49 KB

View saved version →

---
name: content-studio
description: Create and edit Cluelabs Content Studio storyboards and generate or retrieve narration, captions, graphics, sound effects, and music. Use for Content Studio project requests, including access errors and media delivery.
---

# Content Studio

Use the connected Content Studio MCP for live project data and operations. Explicit user instructions take precedence over workflow preferences; server authorization remains mandatory.

## Projects and authorization

- Content Studio projects are private to their account. Project sharing, invitations, and granting another account access are not supported. Never suggest those workflows, including after a permission error. Legacy tool wording about associated sharing data does not establish a sharing feature.
- Resolve a project name with `list_projects`. Clarify ambiguous names. Use an explicitly supplied project ID only for that requested project; never replace it with another project or guess IDs.
- On a project access denial, explain that the connected account cannot perform the requested operation and stop. Do not suggest sharing, ask an owner to grant access, switch accounts, retry through another mutation tool, or claim success. An explicitly authorized permission test may make its requested direct tool call; report which call actually ran and its returned result.
- Distinguish insufficient OAuth scope from project ownership denial. Read, write, and manage consent limits what the connection may do within the account; it does not grant access to another account's projects. Deletion requires manage permission and owner authorization.
- Preserve the exact requested project name. Audience, course topic, and instructions are separate from the name unless the user includes them in it.
- Map displayed slide numbers to persistent IDs using `get_slides`. Update only requested fields, then read back saved results. Storyboard activity notes describe implementation; they are not executable activities.
- For edits to existing slides, use `update_slide` or `update_slides_bulk`. If neither is callable, stop and report the missing editing capability. Do not substitute `create_slide`, deletion, or reordering: creating at an existing ID can preserve the original as an extra slide and change the storyboard structure.

## Saved media prompt identifiers

The host may omit JSON Schema pattern constraints from tool descriptions. Use these exact ID formats when saving new prompts. `N` is the displayed slide number resolved with `get_slides`, `T` is a numeric Unix timestamp in milliseconds, and `XXXXX` is exactly five ASCII letters or digits. Use a new stable ID for each intended prompt and reuse it when correcting a rejected save; preserve unrelated prompts.

| Media | Slide prompt (`type: generated`) | Custom prompt (`type: custom`) |
| --- | --- | --- |
| Graphics | `gp_N_T_XXXXX` | `cp_T_XXXXX` |
| Sound effect | `sp_N_T_XXXXX` | `sc_T_XXXXX` |
| Music | `mp_N_T_XXXXX` | `mc_T_XXXXX` |

For example, `gp_2_1792007200000_phish` is a valid generated graphics prompt ID for displayed slide 2. The `slide` object still uses the authoritative persistent `slideid` and displayed `slideno`. Custom prompts use `{slideid:0,slideno:0}`. Sound-effect and music prompt objects also require the nonnegative integer `timestamp` field; music requires `duration_seconds` and `vocal_mode`. Do not invent shorter ID variants after validation errors. Correct the rejected input before submitting generation, and never resubmit an already accepted generation job.

## Generation and completion

1. Read the saved source content and applicable voice or visual settings. Preserve unrelated settings and prompts.
2. Queue only the requested outputs. Report the actual returned chain/task identifier and queued state. Do not describe a queued job as a completed file.
3. Refresh the appropriate media listing to observe completion. Do not submit duplicate generation merely because work is pending. Report pending or failed work honestly.
4. Submitted prompt records are consumed after acceptance. Empty draft lists do not imply missing generated media. Use the generated media listing to retrieve completed outputs and their source prompts.
5. Audio `duration` metadata is rounded up to whole seconds. Identify it as rounded metadata; do not call it an exact playback measurement. A requested duration is distinct from the generated file's measured length.

## Deliver media without altering its URL

- Treat each returned media URL as an opaque string. Copy it exactly, including host, path, capitalization, percent encoding, credential, query parameters, and signature. Never reconstruct it from a filename, task ID, another URL, or memory; never decode/re-encode, shorten, repair, or normalize it.
- Prefer native media returned by the tool when the host exposes it. Otherwise use the exact returned URL as a Markdown link with a descriptive filename label. For images, use the exact returned URL in an image embed when supported, with a clickable fallback. Do not claim an inline preview works without evidence.
- When a link expires or fails, refresh the corresponding media listing once for a fresh returned URL. Never edit a signature or substitute a guessed URL. If the host blocks playback, state the limitation and provide the project's Content Studio location using the verified project ID so the user can open its media tab.
- Return SRT content exactly as supplied. Report which outputs are complete and which remain pending. Never invent caption URLs, completed files, preview success, or playback measurements.

Referenced files: 1 — file references are metadata, not package contents.

Release notes

Updated the walkthrough to demonstrate all eight review cases in the ChatGPT desktop app using OAuth, and included the updated official Cluelabs logo.

Declared in the saved package. Remote tools may change independently.

Package details

Publisher declarations from the archived package. These are separate from our research and the live service's terms.

Package author
eLearning Company, Inc.
Keywords
See keywords
Commerce declaration
Does not support commerceThis does not establish whether access is free or paid.
Review scenarios
5 positive · 3 negativeScenario counts, not test results.

Declared capabilities

  • storyboarding
  • elearning storyboard writing
  • learning activities planning
  • elearning narrations
  • elearning design
  • elearning asset production

Package observed Nov 2, 2026.

Technical details
First seen
Oct 29, 2026 · 18:00 UTC
Last seen
Nov 3, 2026 · 12:00 UTC
Collection status
Collected

plugin_asdk_app_6ac174d971ac8191802ba981b00de867

Download plugin data (JSON)