← WebMCP Directory

aozu.mantle.tools

aozu.mantle.tools

live Unverified (seed import) Media & Personal 16 tools imperative implementation

AOZU is an agent-native workshop for creating, aligning, and exporting reusable layered character assets with WebMCP.

First seen 2026-09-21 · Last seen 2026-09-28 · Source: webmcp.com

Answer 0 · Act 16 · Transact 0 · Score: Not yet scored

Tool inspector

update_storyboard

act imperative

Create a standalone board or mutate it using its exact expectedRevision. Actions: rename (name/notes), add-frame (title/notes), edit-frame (frameId/title/notes/review/transition/duration), remove-frame, reorder (all frame IDs exactly once), add-candidate (frameId/filename/PNG dataUrl/source/settings), select (frameId/imageId), reference (frameId/imageId/purpose or remove:true), undo, redo. Undefined subjects in candidates may be invented freely. Every defined AOZU Character, Location, Condition or Album Photo used in a candidate must be included in settings. Character settings require the exact Appearance sha256 from inspect_character_contract with scope:model-sheet and images:[appearance]; world settings use the revision from inspect_workspace. Missing or stale refs are rejected. Uploaded candidates NEVER automatically replace selections. Confirmed review requires explicit human approval, never merely successful upload. Reference pins exact image ID/hash; changes to source selection do not rewrite it. Same operations and persisted undo/redo as UI. PNG originals up to 4096×4096 and 5 MiB, at most 100 frames/500 images/128 MiB per board. Source text is provenance only. Returns navigation to affected board for visual review. No same-collection requirement. pin-setting stores the same setting snapshot (id, kind character/location/photo, sourceId, revision, name, details, optional sha256) on frameId, optionally with PNG dataUrl/filename/source/purpose; it never selects or approves an image. unpin-setting removes a snapshot by imageId. inspect_workspace exposes current location and album metadata; local location settings take precedence over ancestor context.

Input schema

PropertyTypeRequiredDescription
action — yes —
boardId string no —
dataUrl string no —
duration number,null no —
expectedRevision integer no —
filename string no —
frameId string no —
imageId string no —
name string no —
notes string no —
order array no —
purpose string no —
remove boolean no —
review — no —
setting object no —
settings array no —
source string no —
title string no —
transition string no —
Raw JSON schema
{
  "additionalProperties": false,
  "properties": {
    "action": {
      "enum": [
        "create",
        "rename",
        "add-frame",
        "edit-frame",
        "remove-frame",
        "reorder",
        "add-candidate",
        "select",
        "reference",
        "pin-setting",
        "unpin-setting",
        "undo",
        "redo"
      ]
    },
    "boardId": {
      "pattern": "^[a-zA-Z0-9_-]{1,100}$",
      "type": "string"
    },
    "dataUrl": {
      "maxLength": 7100000,
      "pattern": "^data:image/png;base64,",
      "type": "string"
    },
    "duration": {
      "exclusiveMinimum": 0,
      "maximum": 600,
      "type": [
        "number",
        "null"
      ]
    },
    "expectedRevision": {
      "minimum": 0,
      "type": "integer"
    },
    "filename": {
      "maxLength": 200,
      "type": "string"
    },
    "frameId": {
      "pattern": "^[a-zA-Z0-9_-]{1,100}$",
      "type": "string"
    },
    "imageId": {
      "pattern": "^[a-zA-Z0-9_-]{1,100}$",
      "type": "string"
    },
    "name": {
      "maxLength": 120,
      "type": "string"
    },
    "notes": {
      "maxLength": 8000,
      "type": "string"
    },
    "order": {
      "items": {
        "pattern": "^[a-zA-Z0-9_-]{1,100}$",
        "type": "string"
      },
      "maxItems": 100,
      "type": "array",
      "uniqueItems": true
    },
    "purpose": {
      "maxLength": 2000,
      "type": "string"
    },
    "remove": {
      "type": "boolean"
    },
    "review": {
      "enum": [
        "draft",
        "needs-work",
        "confirmed"
      ]
    },
    "setting": {
      "additionalProperties": false,
      "properties": {
        "details": {
          "maxLength": 32000,
          "type": "string"
        },
        "id": {
          "pattern": "^[a-zA-Z0-9_-]{1,100}$",
          "type": "string"
        },
        "kind": {
          "enum": [
            "character",
            "location",
            "photo"
          ]
        },
        "name": {
          "maxLength": 200,
          "type": "string"
        },
        "revision": {
          "minimum": 0,
          "type": "integer"
        },
        "sha256": {
          "pattern": "^[a-f0-9]{64}$",
          "type": "string"
        },
        "sourceId": {
          "pattern": "^[a-zA-Z0-9_-]{1,100}$",
          "type": "string"
        }
      },
      "required": [
        "id",
        "kind",
        "sourceId",
        "revision",
        "name",
        "details"
      ],
      "type": "object"
    },
    "settings": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "details": {
            "maxLength": 32000,
            "type": "string"
          },
          "id": {
            "pattern": "^[a-zA-Z0-9_-]{1,100}$",
            "type": "string"
          },
          "kind": {
            "enum": [
              "character",
              "location",
              "photo"
            ]
          },
          "name": {
            "maxLength": 200,
            "type": "string"
          },
          "revision": {
            "minimum": 0,
            "type": "integer"
          },
          "sha256": {
            "pattern": "^[a-f0-9]{64}$",
            "type": "string"
          },
          "sourceId": {
            "pattern": "^[a-zA-Z0-9_-]{1,100}$",
            "type": "string"
          }
        },
        "required": [
          "id",
          "kind",
          "sourceId",
          "revision",
          "name",
          "details"
        ],
        "type": "object"
      },
      "maxItems": 20,
      "type": "array"
    },
    "source": {
      "maxLength": 2000,
      "type": "string"
    },
    "title": {
      "maxLength": 160,
      "type": "string"
    },
    "transition": {
      "maxLength": 8000,
      "type": "string"
    }
  },
  "required": [
    "action"
  ],
  "type": "object"
}

Similar websites

tracinginsights.com

tracinginsights.com

Analyze Formula 1 racing data with interactive charts for lap times, live telemetry, timing data and race performance. Explore and Compare drivers across multip…

live Unverified Media & Personal
52 tools A17 / Act35 / T0 Not yet scored Seen 2026-09-28
select-f1-data get-current-selection list-available-options get-data-status wait-for-data
Inspect tools
rough-cut.samarthsaxena1672003.workers.dev

rough-cut.samarthsaxena1672003.workers.dev

A human-first video editor with structured WebMCP tools for any compatible agent.

live Unverified Media & Personal
40 tools A6 / Act34 / T0 Not yet scored Seen 2026-09-28
request_video_upload get_project_state get_activity rename_project get_transcript
Inspect tools
fiveminutebrief.ai

fiveminutebrief.ai

live Unverified Media & Personal
31 tools A10 / Act21 / T0 Not yet scored Seen 2026-09-28
list_public_topics get_public_topic get_latest_brief get_public_topic_preview get_brief_newsletter
Inspect tools
panoptik-studio.vercel.app

panoptik-studio.vercel.app

Browser-native demo video editor where humans and AI agents co-edit on the same canvas via WebMCP. No uploads, no server.

live Unverified Media & Personal Transact tools
30 tools A9 / Act20 / T1 Not yet scored Seen 2026-09-28
get_project_state list_clips list_scenes get_silence_intervals get_transcript
Inspect tools

Related on Influzer