Skip to main content
Glama

Animer une photo

animate_photo

Anime une photo ancienne en une courte vidéo naturelle. Consomme 1 crédit (compte approvisionné requis, pas d'essai gratuit). Fournis l'image via image_url (URL publique http(s) — PRÉFÉRÉ : notre serveur va la chercher, marche partout, aucun upload côté client) OU image_file (fichier joint par l'utilisateur, rempli automatiquement par ChatGPT) OU photo_id (create_upload puis confirm_upload ; ce PUT peut être bloqué dans un agent sandboxé). Privilégie image_url dès qu'une URL est disponible. À n'utiliser que pour des photos que l'utilisateur a le droit d'animer (les siennes, sa famille, ses ancêtres) ; refuse d'animer des personnalités publiques identifiables ou des personnes tierces sans leur consentement.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
styleNoIndication libre et subtile sur le mouvement (optionnel).
photo_idNoPhoto uploadée (via confirm_upload), si l'utilisateur a joint un fichier sans URL. Prioritaire si fourni.
image_urlNoURL publique http(s) de la photo. Chemin PRÉFÉRÉ (aucun upload, marche partout).
image_fileNoFichier joint par l'utilisateur — rempli AUTOMATIQUEMENT par ChatGPT (openai/fileParams) quand une photo est attachée. Notre serveur télécharge le download_url côté serveur (aucun upload côté client).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesIdentifiant du job d'animation (à poller).
statusYesStatut du job : en cours, réussi ou échoué.
photo_urlYesURL de la photo source (avant), pour l'aperçu inline.
video_urlYesURL de la vidéo une fois prête, sinon null.

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, openWorldHint=true), the description reveals significant behavioral traits: it consumes a credit, requires a funded account, and may be blocked in sandboxed environments for photo_id. It also imposes an ethical constraint against animating public figures. This goes well beyond what annotations already disclose.

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?

The description is slightly long but every sentence adds necessary value—purpose, cost, input methods, and ethics. It is well-structured and front-loaded with the core action. It could be tightened slightly, but it is not verbose or redundant.

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

Completeness5/5

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

Given the tool's complexity (4 params, nested image_file object, output schema exists), the description covers input methods, costs, prerequisites, and ethical boundaries. It also implicitly addresses the output by referencing a video, and the output schema handles return details. It is complete for the intended use.

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

Parameters5/5

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

Even though the schema descriptions cover all parameters, the description adds crucial priority information: it recommends image_url over others, explains that image_file is auto-populated by ChatGPT, and details the photo_id workflow with potential sandbox blocking. This enriches the schema semantics significantly.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Anime une photo ancienne en une courte vidéo naturelle'. It clearly distinguishes this tool from siblings like get_animation_status and confirm_upload, which serve different purposes. The scope is well-defined.

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

Usage Guidelines5/5

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

It explicitly explains when to use each input method (image_url preferred, image_file auto-filled, photo_id via create_upload/confirm_upload) and provides ethical guidance on only animating photos the user has rights to. It also states the credit requirement and no-free-trial condition, giving clear context for when the tool is applicable.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clearly distinct role: upload creation, upload confirmation, animation triggering, status polling, and example browsing. The two upload-related tools are sequential and their boundaries are explicit.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: create_upload, confirm_upload, animate_photo, get_animation_status, list_examples. This makes the set predictable and easy for an agent to navigate.

Tool Count5/5

Five tools is well-scoped for a focused photo-animation service. Each tool supports a necessary part of the workflow without unnecessary sprawl or overlap.

Completeness5/5

The tool set covers the full animation lifecycle: upload setup, finalization, animation submission, result polling, and example discovery. No essential operation is missing for the stated purpose; cancellation is not a core workflow here.

Resources