Lesson Studio: studio projects, compositions, slides, project versions, comments, plus slide templates + themes.
| |
|---|
| Endpoint | https://studio.mcp.devfellowship.com/mcp |
| Tools | 24 |
| Backing data | studio projects, compositions, slides, versions, comments; slide templates + themes (read/update). |
| Tool | Description |
|---|
create_slide_comment | Create a review comment anchored to a slide in a Lesson Studio project (Course Canvas comments). Stamped with the project current version; version 1 is auto-created if none exists. |
delete_slide_comment | Delete a Course Canvas comment by id. |
get_version_comments | Get all comments for a project version as a clipboard-ready text block, one comment per line prefixed with project/composition/slide references. Defaults to the project current version. Use for the |
list_slide_comments | List Course Canvas comments of a project (newest first), optionally filtered by version and/or resolved state. Enriched with composition title + slide order for reference. |
update_slide_comment | Update a Course Canvas comment body and/or its resolved state. |
Compositions
| Tool | Description |
|---|
create_composition | Create a composition (lesson-level grouping / |
delete_composition | Delete a composition. Its slides must be removed or reassigned first (slides.composition_id is NOT NULL). |
list_compositions | List the compositions of a Lesson Studio project, ordered by order_index. |
update_composition | Update a composition title and/or order_index. |
Studio Projects
| Tool | Description |
|---|
create_studio_project | Create a new Lesson Studio project in the lesson_studio schema, plus a |
delete_studio_project | Delete a Lesson Studio project. Its compositions, slides, slide_elements and slide_media cascade. RLS-scoped: only the caller\ |
list_studio_projects | List Lesson Studio projects owned by the caller (RLS-scoped), most recently updated first. |
Slides
| Tool | Description |
|---|
create_slide | Create a slide under a composition (mirrors the Lesson Studio editor insert shape so it is valid + editable in the UI). |
delete_slide | Delete a slide. Associated slide_elements and slide_media cascade. |
list_slides | List the slides of a composition, ordered by order_index. |
update_slide | Update a slide (order_index, duration, template, background, transition…). |
Project Versions
| Tool | Description |
|---|
bump_project_version | Create a new version of a Lesson Studio project (version_number = max existing + 1, starting at 1). Subsequent comments are stamped to this new version. Returns the created version row. |
list_project_versions | List the versions of a Lesson Studio project, ordered by version_number descending (current/highest first). |
Templates
| Tool | Description |
|---|
get_template | Fetch all source files (HTML landscape, HTML portrait, CSS landscape, CSS portrait, config YAML) for a specific template. |
list_templates | List all slide templates available in dfl-slide-templates (reads registry.json from GitHub). |
update_template | Open a ready-to-merge PR in dfl-slide-templates with updated HTML/CSS and optional config YAML for a template. All provided fields are written in a single commit. Returns the PR URL. |
Themes
| Tool | Description |
|---|
get_theme | Fetch the CSS source for a specific theme. |
list_themes | List all CSS themes available in dfl-slide-templates. |
update_theme | Open a ready-to-merge PR in dfl-slide-templates with updated CSS for a theme. Returns the PR URL. |