Skip to main content
Glama

Create asset character

create_asset_character
Destructive

Create a character in your fal Assets library from reference images. Use vector or request IDs for existing assets; use hosted URLs for standalone images.

Instructions

Create an asset character for the authenticated user's fal Assets library. Prefer vector IDs or request IDs in reference_images for existing fal-generated assets; use fal-hosted image URLs only for standalone images. Unresolved ID references are materialized before character state is added.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoCharacter display name
accountNoExact private account key profile label, not an authenticated provider owner ID.
confirmNoMust be true for the requested mutation, paid work or private output file.
payloadNoComplete native JSON body, mutually exclusive with flat body flags and payload_file. Use schema for union bodies.
identifierNoOptional @mention identifier for the character
descriptionNoText description used for character semantic matching
payload_fileNoAbsolute regular non-symlink private JSON file, at most 1 MiB. Cannot mix with other body inputs.
Idempotency_KeyNoOptional idempotency key for safe request retries
cover_image_urlNoOptional fal-hosted cover image URL for the character
reference_imagesNoReference images for the character. Prefer vector IDs or request IDs for existing fal-generated assets. Use fal-hosted image URLs only for standalone images.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description does add one genuine behavioral fact — 'Unresolved ID references are materialized before character state is added' — but says nothing about the destructive scope of the mutation or the confirm requirement that the schema hints at.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the core action and scoped by library ownership. It is tight overall, though the reference_images sentence duplicates schema text rather than earning its place in the prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter mutation with a nested union body (payload vs. flat flags vs. payload_file) and no output schema, the description is adequate but thin — it omits the mutual-exclusivity constraint between body forms and the meaning of the confirm flag. Those are covered by the schema, so the gap is tolerable rather than fatal.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% across all 10 parameters, including the nested payload object, so the baseline is 3. The description's reference_images guidance ('prefer vector IDs or request IDs... use fal-hosted image URLs only for standalone images') is a verbatim restatement of the schema field description, adding no meaning beyond it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource — 'Create an asset character' — and scopes it to 'the authenticated user's fal Assets library', which cleanly separates it from siblings like create_asset_collection or create_asset_tag. It never names an alternative tool, so it stops short of the explicit sibling differentiation a 5 requires.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the tool name: you call it when you need a new character. There is no statement of when to prefer create_asset_character over update_asset_character, no prerequisites, and no exclusions. The reference_images advice is about input format, not about tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.