Skip to main content
Glama

Veltake Studio

Price the composer (app)

app_quote
Read-onlyIdempotent

For the Veltake app's own screens only — not for a conversation. estimate_generation for the composer's settings.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindYeswhat to make: image | video | speech | music. Each argument below says which kinds take it
linesNospeech: the script, in order — each line is {speaker, text}
modelYesa model id from list_models for this kind
styleNomusic: the style — a genre, a mood, the instruments (custom songs)
titleNomusic: the song's title (custom songs)
imagesNoimage, video: hosted image URLs — references for an image model; for a video model the first frame, or with images_are_references the subject/style references (at most the model's max_images). Import a link with import_media first
lyricsNomusic: the words to be sung. With lyrics, title and style are required
promptNoimage, video: what to make. music: the description of the song (simple mode; for a song with its own lyrics use lyrics)
durationNovideo: seconds, one of the model's durations. music: the song's length in seconds (custom songs only)
speakersNospeech: the voices, in order (list_models has the voices, accents, styles and paces). Each is {name, voice, accent, style, pace, profile}, all optional except that a script needs at least one speaker
last_frameNovideo: a hosted image URL for the LAST frame — only for models with supports_transition; then images holds exactly the first frame
resolutionNoimage, video: one of the model's resolutions — a higher tier costs more
aspect_ratioNoimage, video: the frame, one of the model's aspect_ratios (e.g. 16:9)
instrumentalNomusic: no vocals
generate_audioNovideo (and any image model that has it): make the sound too — only for models with supports_audio, and it costs audio_cost more
reference_audioNovideo: a hosted audio URL to take sound from — only for models with max_reference_audios above 0
reference_videoNovideo: a hosted video URL to take motion or style from — only for models with max_reference_videos above 0
images_are_referencesNovideo: read images as references to draw from, NOT as the first frame — the video does not start on them. Needs at least one image, cannot be combined with last_frame, and only models with supports_reference take it

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
vNo
kindYes
coinsYes
modelYes
enoughNo
balanceNo
settingsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds only a UI-scope note and discloses nothing else behavioral — not that this is a pure cost computation with no side effects, whether it consumes credits, or any auth/rate constraint.

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

Conciseness3/5

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

It is very short and the scope constraint is front-loaded, so there is no wasted text. The problem is under-specification rather than verbosity — the second sentence is a fragment with no verb, which reads as truncated output rather than a deliberate concise statement.

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

Completeness2/5

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

For an 18-parameter, four-modality pricing tool the description is far too thin: it never says it produces a cost estimate, never mentions that the required model id must come from list_models, and never explains how it relates to app_generate or estimate_run. An output schema exists so return values need no explanation, but the input-side and selection context are missing.

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% and the schema itself is unusually rich, explaining per-kind applicability for all 18 parameters. The description adds no parameter-level meaning whatsoever, so the baseline 3 applies.

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

Purpose3/5

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

The description contains no verb stating what the tool does ("quote"/"estimate a price"); the purpose is only recoverable from the title "Price the composer (app)". It does supply a genuine scope boundary ("the Veltake app's own screens only — not for a conversation"), which distinguishes it from the conversation-oriented siblings, but the core action is left implicit.

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?

It names a sibling, estimate_generation, and draws a context line between app screens and conversations, which is real routing information. However, the phrasing "estimate_generation for the composer's settings" has no verb and is ambiguous about whether it is a recommendation, a contrast, or an unrelated note, so the agent cannot be certain which tool to pick.

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.

Resources