MuseDirectory
All connectors / Productivity
Productivity

Clueso

Create videos and documents with AI, keeping everything editable as you build

Clueso lets you build videos and documents by describing what you need. Create clips, add text, images, animations and voiceover, then export. Everything stays editable so you can refine as you go.

Try asking Muse: "Create a 3-minute tutorial video with voiceover by describing the steps and letting Clueso handle the layout and timing"

Working now?
Working
Worked last 7 days
100% of checks
How to get it
Extra setup
Account
No account needed
Price
Not stated

Source: Found in the official MCP Registry (io.clueso/video) · First listed September 25, 2026

Last 24 hours

Each bar is one check, every 15 minutes. Green means it answered. Last checked 37 min ago.

Is it safe to connect?

What Muse can see: It does not ask you to sign in, so it cannot see your accounts. It only sees what Muse sends it from your request.

Before it acts: Read what Muse plans to do before you approve it, and remove the app from Muse when you stop using it.

musedirectory.ai is not part of Meta. More about how Muse handles your information

How to add it to Muse

Not in Muse's Connectors list yet, but Muse can still use it. Copy the request below and paste it into Muse. Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Open Muse
https://connect.clueso.io/mcp

Not in Muse's Connectors list yet. Muse can still use it: its page gives you a request to paste into Muse.

Technical details: safety screening, tools, response time and recent checks

Response time at the last check: 77ms. Worked in 100% of checks over 30 days.

Screening · September 25, 2026

Screened, no issues found

MCP handshake
Pass
Answered in 277ms
Domain against threat feeds (Cloudflare security DNS)
Pass
connect.clueso.io, help.clueso.io not flagged
Published packages against the OSV malicious-package database
n/a
No npm or PyPI package published
Hidden instructions or invisible characters in tool text
Look
find: Unusually long tool description; get_clip: Tool text tells the model to take extra steps; get_clip: Unusually long tool description; add_elements: Unusually long tool description
Inputs asking for passwords, card numbers or seed phrases
Pass
None found
Domain and redirects
Pass
No redirects off the domain
AI review of purpose and tool behavior
Pass
No concerns

Screening looks for known threats and hidden instructions at the time of the check, and runs again weekly and whenever the tool list changes. It cannot see the server's code, so only connect what you need and review what Muse asks to do. How screening works.

Tools · 40

get_design_guideClueso's house style for composing video clips — how to think about concept, typography, color, composition, motion, and pacing. Read it before composing or editing a clip's visuals when you're NOT following a clueprint, or to fill gaps a clueprint leaves silent. General craft, n
create_projectCreate a new blank Clueso project. Returns the projectId and initialClipId — the project starts with one blank clip already at index 0 (default short duration). Use update_clips to resize/retitle clip 0, add_clips(kind='blank') to append more clips, add_elements to place content,
update_projectUpdate a project's metadata: rename, change description, move to a different folder, or change aspect ratio. Only fields you provide are changed. To move a project to the workspace root, pass folder_id="" (empty string). Aspect ratio: pass any "W:H" (positive integers). The canva
duplicate_projectClone an entire project — every clip, voiceover, asset, and metadata field — into a fresh project. The copy has its own S3 namespace, so changes or deletions to the source never affect the duplicate. Defaults: - new_title omitted → "{source title} (copy)" when no folder_id is giv
export_projectKick off a video export of the project. Returns immediately with an export_id; the export pipeline runs in the background. The user can find the rendered video in the Exports tab in the editor. Defaults: 1080p / 30fps / no captions / English. Pass overrides only when needed.
findFind any resource in Clueso by type, optionally filtered by name or exact id. One tool for listing and searching across the workspace. type: • projects | folders | clueprints | workspaces • backgrounds | voices | fonts | image_gen_style_packs | element_components (voices carry `g
switch_workspaceSwitch the active workspace. The choice sticks for this client until you change it again — including across reconnects — so every later call operates in the new workspace. Use find(type='workspaces') to see available options.
get_projectGet a summary of a project: canvas dimensions, per-clip summary (ids, indices, durations, element counts, voiceover_volume), and `audio_tracks` — every music/SFX entry on the project flattened to the same wire shape `add_audio` accepts (id, src, name, source_duration, guide_start
get_clipRead one clip: its elements (positions/sizes in canvas pixels), voiceover (text, voice, duration, voiceover_volume), background and transition. Pass `render` to also get a PNG of the frame. ASK FOR WHAT YOU NEED. A full read is large — on a dense clip the per-word voiceover array
update_clipsUpdate one or more clips in a single call — background, transition, duration, title, visibility, position, and (video clips) the footage transform via video_styling. Always batch. Each entry: { clip_index, duration?, title?, background_color? | background?, transition?, hidden?,
remove_clipRemove a clip from the project by index. Cannot remove the last remaining clip. After removal, all clips with index > clip_index shift down by 1. When removing multiple clips by index, remove from highest index to lowest (or capture clip_ids first and re-derive indices between ca
split_clipSplit a video clip into two clips at the given timestamp. The left clip keeps the original clip ID; the right clip gets a new ID and is inserted immediately after. Elements spanning the split point are duplicated into both clips with adjusted timing. Voiceover transcript and tran
duplicate_clipClone one clip — within the same project, or **from another project** — into a target project. - Same project: pass `target_project_id` and `source_clip_id` (omit `source_project_id`). - Cross-project: pass `target_project_id`, `source_project_id`, `source_clip_id`. The source cl
add_clipsCreate new clips on a project. One tool, three sources: - kind="blank": empty slide clips you'll populate with add_elements / generate_media. Pass `clips: [{title?, duration?}, ...]`. Note: create_project already creates clip 0; calling with N blank entries gives N+1 clips total.
get_element_schemaReturn the schema for an element type's type_data, as TypeScript declarations. Call this before add_elements / update_elements when you don't already know the field shape for the element_type you're placing. Pass element_type='group' for the GROUP surface instead — what a group i
add_elementsAdd many elements across one or more clips in a single tool call. Replaces the per-element tool — always batch. SEND LESS. Most batches repeat themselves — the same clip_index, element_type, font_setting, alignment or gradientSetting on every item. Hoist those into `defaults` and
update_elementsUpdate many elements across one or more clips in a single tool call. Replaces the per-element tool — always batch. SEND LESS, GET BACK LESS. `defaults` carries what every item shares (clip_index, element_type, and type_data entries like font_setting or alignment) so you send it o
remove_elementsRemove many elements across one or more clips in a single tool call. One entry per element ({clip_index, element_id}). Concurrency: parallel-safe (conflict domain: the individual element) — same as update_elements. Each removal is a granular element_remove patch scoped to that el
reorder_elementsReorder the elements inside a clip. List position IS the z-index — later entries in `ordered_element_ids` render on top of earlier ones. You MUST pass the full set of element IDs currently in the clip. The handler rejects partial lists so a reorder can never silently drop an elem
update_groupsTransform, keyframe, rename, nest or lock GROUPS. A group moves, scales, rotates and fades as ONE unit, without touching any child's stored position — which is how you get a camera push instead of building the target layout twice and crossfading it. Address by `group_id`, never b
remove_from_projectRemove an element, a group or an audio track from a project. - target="element": removes an element (requires element_id, or element_ids for several). clip_index is optional — the element is located by id; pass it only as a hint - target="group": removes a GROUP node (requires cl
add_audioAdd a music track or sound effect that plays as a project-level audio layer over all clips. Does NOT consume a clip slot. Use this for background music or a soundtrack that should play under the existing timeline. (For inserting an audio file as its own sequential clip with auto-
update_audioMutate fields on an existing music/SFX track by id. Read existing tracks via `get_project.audio_tracks` — the per-entry shape there matches this tool's args, so you can flip a knob (volume, fades, timing, loop) and write it back without losing the track's id. Only fields you pass
voiceover_batchSet voiceover text and/or trigger speech generation for any number of clips in a single call. Each entry chooses its own action: - "set_text" — set transcript for a clip (clip_index + text) - "generate_speech" — async TTS for a clip (returns immediately) - "set_and_generate" — se
auto_syncRun the agentic auto-sync pipeline against a clip with a source recording. Detects natural sync points (UI state changes, narrated steps) and inserts sync-marker nodes into the clip's transcript. Async: returns immediately with a status enum from the pre-flight; sync-marker nodes
add_sync_pointInsert one sync marker on a clip's transcript. Use this when: - The user is explicit about WHERE the camera should pause / cut (e.g. "sync the word 'submit' to 4.2s of the demo"). - `auto_sync` ran but missed a step you care about. How matching works: - `word`: case-insensitive,
upload_fileUpload one or more files to Clueso. Pick a mode by client + where the file lives: 0. **files** — ChatGPT only: files the user attached in the conversation. ChatGPT fills each entry (download_url + file_id) itself; pass the attachments here rather than asking the user to re-upload
check_uploadsFetch all files the user uploaded via the hosted upload page. Returns one mcp_upload_id per file — pass each to the appropriate tool (add_clips, add_article_media, etc.). Call this once after the user confirms they are done uploading; the token covers all files they dropped on th
generate_mediaGenerate an AI image or canvas-code-based animation directly into a clip. - kind="image": text-to-image. Pass `prompt`. Optional: `animation_setting` (entry/exit — set it HERE, see below), `style_id` (from find type='image_gen_style_packs'), `reference_image_url` or `mcp_upload_i
estimate_durationEstimate voiceover duration for one or many clips at once (~150 words/minute). Pass an array of voiceover texts — one per clip. Returns durations in the same order, ready for add_clips.
analyze_audioAnalyze an audio file. Modes: - transcript: Speech-to-text with word-level timestamps — returns `{language, full_text, words}` where each word is `{word, start_ms, end_ms, punctuated_word}`. ⚠ MILLISECONDS here; get_clip's `voiceover_words` gives the same words in SECONDS as `{wo
get_articleGet the article content as markdown. Screenshots appear as <SCREENSHOT {id}> placeholders. Returns the markdown text and a list of screenshot IDs.
update_articleUpdate article text content from markdown. Use <SCREENSHOT {id}> placeholders to position screenshots. Screenshots in the markdown are kept. Screenshots removed from markdown are deleted. Order in markdown defines final order. Get the current article first with get_article, modif
add_article_mediaAdd a screenshot or GIF to the article. Returns a screenshot_id to place in the article via update_article using `<SCREENSHOT screenshot_id>`. - kind="image": pass `timestamp` to capture a frame from the project's base video, OR pass `mcp_upload_id` (from the upload tool) to atta
update_article_mediaUpdate an article image/GIF (screenshot), or inspect its current state. - Provide one or more of `zoom_factor`, `crop`, `shapes` to change metadata. - Pass `render=true` (with no other updates) to fetch the current details without mutating. To DELETE an article image/GIF: call `u
create_clueprintCreate a new clueprint (reusable video template). A clueprint is a structured file directory with design notes, composition rules, and screenshots that can be used to generate videos. Use human-readable folder categories: design/ (colors, typography, backgrounds, animation), rule
get_clueprintFetch clueprint data. Use `include` to control how much you pull back: - include="metadata": just the clueprint's name/description/tags/visibility/thumbnail. - include="tree": metadata + the full file tree (path, mime_type, and size per entry). Call this first when exploring an u
update_clueprintUpdate a clueprint's metadata and/or file contents in one call. Metadata fields (`name`, `description`, `tags`, `visibility`, `thumbnail_path`) are applied as a patch — only the fields you pass change. Pass at least one to update metadata. `files` is a list of file mutations: - W
set_voiceSet the voiceover voice for every clip in a project. Use this to apply a clueprint's voice (read `voiceover.voice.name` and `voiceover.voice.engine` from the clueprint source data), or to switch all clips to a specific voice in one call. The voice is looked up by name + engine; l
add_commentPost a review comment on a project, attributed to "Clueso AI". Use this to leave feedback, suggestions, or notes — either at the project level (no clip_id) or pinned to a specific clip with an optional timestamp inside that clip. Pass `parent_comment_id` to REPLY to an existing c

Recent checks

2026-09-28 08:31:28live · HTTP 20077ms
2026-09-28 06:15:58live · HTTP 20069ms
2026-09-28 04:00:49live · HTTP 200617ms
2026-09-28 01:31:07live · HTTP 200100ms
2026-09-27 23:15:54live · HTTP 200133ms
2026-09-27 21:00:40live · HTTP 2001874ms
2026-09-27 18:31:30live · HTTP 200542ms
2026-09-27 16:16:17live · HTTP 2002034ms
2026-09-27 14:16:04live · HTTP 2001382ms
2026-09-27 12:00:51live · HTTP 200486ms
2026-09-27 09:31:41live · HTTP 2001694ms
2026-09-27 07:16:05live · HTTP 200352ms

Link

https://connect.clueso.io/mcp

Questions about Clueso in Muse

How do I connect Clueso to Muse?

Not in Muse's Connectors list yet, but Muse can still use it. Paste this into Muse: "Use Clueso to help me. It is a free service with an MCP server at https://connect.clueso.io/mcp. It does not need an API key. Ask me before you share anything with it." Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Is Clueso working right now?

At the last check (September 28, 2026, 08:31 UTC) the endpoint was working, answering in 77ms. Over the last 7 days it answered 100% of health checks. It is checked every 15 minutes.

Is Clueso safe to connect to Muse?

It was screened on September 25, 2026 with the result "screened, no issues found". Screening checks the domain against threat feeds and reads the tools for hidden instructions and requests for passwords or card numbers. It cannot see the server's code, so grant only the access you need.

What can Clueso do in Muse?

It exposes 40 tools, including get_design_guide, create_project, update_project, duplicate_project. For example, you could ask Muse: "Create a 3-minute tutorial video with voiceover by describing the steps and letting Clueso handle the layout and timing"

Follow Clueso

Tell me if Clueso goes down, comes back, or changes its tools
One email per change. You confirm first, and every email has a link to stop.
Made this app? Claim it or get a status badge

Is this yours?

This listing was added from public sources (Found in the official MCP Registry (io.clueso/video)). If you build Clueso, claim it to correct the details and get your badge.

Claim this listing

Clueso status badge

Paste this on your site or README. It always shows the latest check.

<a href="https://musedirectory.ai/connector/clueso"><img src="https://musedirectory.ai/badge/clueso.svg" alt="Clueso on musedirectory.ai" width="236" height="40"></a>

More for app makers