Skip to content
Skillpedia
Agents48k · #3640

muapi-media

Enables your agent to generate images and videos using the MuAPI. Protects keys, manages the process, and securely downloads results.

What it does

This agent creates images and videos using the MuAPI. It selects the best model for you, handles API keys securely, and downloads the output.

When to use it

  • ✓When you explicitly ask to create an image or video with MuAPI.
  • ✓If you're already using a media workflow and need to integrate MuAPI.
  • ✓When you want to compare or switch between media generation models without changing your workflow.

Example of what to ask your AI

“Create an image of a cat wearing a party hat using MuAPI.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/muapi-media/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/muapi-media/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

It first checks the available image/video models in MuAPI. Then, it gets the specific instructions for the chosen model and submits your request. Finally, it polls until the image or video is ready for download.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill muapi-media

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/muapi-media/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

MuAPI Media

Overview

Use MuAPI's unified asynchronous API for image and video generation when a workflow needs model choice without a separate integration for every provider. The catalog and each model's input schema are authoritative; this skill does not guess fields, bundle an SDK, or hide a billable generation request. For a capability overview, see the MuAPI AI video API.

When to Use This Skill

  • Use when the user explicitly asks to generate an image or video with MuAPI.
  • Use when an existing media workflow needs a hosted asynchronous API and can send an authorized HTTPS request.
  • Use when the user needs to compare or switch among current media models without changing the surrounding submit-and-poll workflow.
  • Do not use this skill for text chat or for a provider whose current schema has not been fetched and checked.

Preconditions

  1. Confirm that the user is authorized to send the prompt and any reference media to a third-party service.
  2. Explain that generation may be billable and obtain approval immediately before the generation request.
  3. Require MUAPI_API_KEY in the environment. Never ask the user to paste it into chat, source files, command history, or logs.
  4. Confirm the requested media type, output location, and whether the user wants a single generation or an explicitly approved batch.

API Contract

Operation Method and endpoint
List current models GET https://api.muapi.ai/api/v1/models
Read one model's schema GET https://api.muapi.ai/api/v1/models/{model}
Submit a generation POST https://api.muapi.ai/{catalog endpoint}
Poll a prediction GET https://api.muapi.ai/api/v1/predictions/{request_id}/result

Generation and prediction requests use:

x-api-key: $MUAPI_API_KEY
Content-Type: application/json

The catalog returns a model name, category, endpoint, and other metadata. The endpoint value already includes /api/v1/; append it to https://api.muapi.ai without adding a second version prefix. Model input and output fields vary, so read the selected model's schema immediately before preparing a request.

How It Works

1. Discover and validate a model

Use a temporary directory for response files and keep credentials out of every file. The catalog lookup is read-only:

workdir=$(mktemp -d "${TMPDIR:-/tmp}/muapi-media.XXXXXX")

curl --fail --silent --show-error \
  --header "Accept: application/json" \
  "https://api.muapi.ai/api/v1/models" \
  --output "$workdir/models.json"

jq -r '
  .models[]
  | select(((.category // "") | ascii_downcase | test("image|video|audio|3d")))
  | [.name, .category, .endpoint]
  | @tsv
' "$workdir/models.json"

Select a model from the current catalog, then fetch its detailed schema. Do not copy a payload from a different model just because the names look similar:

export MUAPI_MODEL="<model name from the catalog>"

curl --fail --silent --show-error \
  --header "Accept: application/json" \
  "https://api.muapi.ai/api/v1/models/${MUAPI_MODEL}" \
  --output "$workdir/model.json"

jq '.input_schema.schemas.input_data' "$workdir/model.json"

Check required fields, types, enum values, size limits, and the output schema. If the model requires an image or video input, use the exact documented field and an authorized HTTPS input URL; do not invent an upload contract.

2. Prepare one reviewed request

Set the key only in the environment and stop before submission if it is absent:

test -n "${MUAPI_API_KEY:-}" || {
  echo "Set MUAPI_API_KEY before generation." >&2
  exit 1
}

export MUAPI_PROMPT="A small paper boat crossing a calm pond at sunrise, steady camera"

# Add only fields confirmed by model.json. This example uses a prompt field;
# many models also require duration, resolution, aspect ratio, or an input URL.
jq -n \
  --arg prompt "$MUAPI_PROMPT" \
  '{prompt: $prompt}' \
  > "$workdir/request.json"

Review the model, requested parameters, destination, and estimated cost with the user. Do not put MUAPI_API_KEY in request.json.

3. Submit exactly once

Resolve the catalog endpoint and make one POST. Do not automatically retry a generation POST after a timeout: the original task may have been accepted.

model_endpoint=$(jq -er --arg name "$MUAPI_MODEL" '
  .models[]
  | select(.name == $name)
  | .endpoint
  | select(type == "string" and startswith("/api/v1/"))

…
FAQ

Is there a cost to use this?

Media generation can be a billable service. It's important to confirm pricing before proceeding with a generation request.

How does MuAPI know which model to use?

MuAPI maintains a catalog of models. This agent consults that catalog to find the most suitable model for your request.

Where is the API key stored?

The API key is configured in the system's environment and is never shared directly with you or stored in any visible location.

Details

Original description by the author

Generate images and videos with MuAPI's schema-driven asynchronous media API while protecting keys, polling, and output downloads.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#3640
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills