Skip to main content
Glama

manage_voice

Cloned voices currently expose no numeric speech-speed, pause-length or target-duration controls in submit_voice. Use only declared supportedControls; do not infer controls from other voices or underlying services. Text cues are not guaranteed timing controls. Use one unified voice surface for official ChatCut voices and the current user's cloned voices. Account management and previews need no project; cloning from sourceAssetId does. For voice selection, call action="list" with voiceType="all". It returns one normalized candidate list: custom voices first, followed by filtered official voices. Build one playable audition UI from these returned tuples; never merge a static Skill catalog with a separate custom-voice lookup. Official voices support only action="list". Custom voices support list, check-create-access, apply, clone, preview, rename, and delete. Pass the returned voiceRef to submit_voice or submit_avatar_video according to supportedUses; apply is optional because generation rechecks access. A cloned voice name, preview text, or recency does not identify the speaker in the current source. Use sourceAssetId/sourceProjectId as provenance facts, not voice recognition. Missing provenance is unknown, never a match. Reuse for the current speaker only with a verified source association or a user selection resolved to one candidate by attached reference, ID, unique name or picker choice. A preference for saved voices alone is not a selection; ask when ambiguous. Otherwise clone the authorized current source or ask the user to select. Keep provider names and provider-specific identifiers internal. Clone only after explicit ownership/permission confirmation, and delete only after explicit permanent-delete confirmation. Custom cloning accepts a project audio asset; ChatCut Desktop also accepts a video asset and uses its complete default audio track, extracted locally without creating another project asset. The reference audio must be 10–180 seconds and at most 25 MiB; a Desktop video file itself may be larger.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "action": "<action>",
      "voiceType": "<voiceType>"
    },
    "name": "manage_voice"
  }
}

Input Schema

NameRequiredDescriptionDefault
ageNoFor official/all list: optional age bucket.
useNoVoice discovery destination. Defaults to tts. Use avatar for avatar-video speech, including avatar-only voices. Check each returned supportedUses.
nameNoRequired for custom clone and rename.
tagsNoFor official/all list: optional exact tags.
limitNoFor official/all list: optional maximum official results. Omit it to return the complete matching official catalog. Custom voices are not counted against this limit.
queryNoFor list: optional name, tone, use-case, tag, or custom voice search.
tokenNoAvatar discovery only: nextToken returned by a previous page.
actionYesclone needs a free custom voice slot. If clone or check-create-access returns CUSTOM_VOICE_QUOTA_EXCEEDED, all custom voice slots are in use: use an existing voice from list, or have the user free a slot first. Buying credits does not add slots. Do not retry clone until a slot is freed.
genderNoFor official/all list: optional requested gender.
localeNoFor official/all list: visible name and summary language; supported translations are en/es/ja/zh/zh-Hant, with English fallback.
languageNoTarget narration language, independent from locale. Accepts language codes such as en, es, ja, zh-CN, vi, or th. en/es/ja/zh retain curated tags; other codes search the multilingual bucket. Japanese ja selects its matching audition audio. Read returned modelGuidance: catalog tags do not guarantee model language support. Avatar discovery accepts its language filter.
providerNoFor official/all list: optional internal provider filter. Usually omit.
projectIdNoProject for this call (full ID or unambiguous prefix). Explicit-timeline calls never change the target of later calls; legacy project selection applies otherwise.
voiceTypeYesUse "all" for the normal combined audition list, "official" for the read-only curated catalog, or "custom" for cloned voices.
timelineIdNo
previewTextNoRequired for custom clone and preview.
languageCodeNoFor custom clone: reference audio's spoken language code, e.g. en, zh, or es. Supply it when known; otherwise the backend uses the asset's transcript language. Independent from list language/locale and preview text language.
customVoiceIdNoRequired for custom apply, preview, rename, and delete.
sourceAssetIdNoRequired for custom clone. A local ChatCut audio or video asset id. For detached timeline audio, use its original video asset id. The complete default audio track is used; timeline trims are not applied.
confirmedDeleteNoCustom delete only. True only after explicit permanent-delete confirmation.
confirmedConsentNoCustom clone only. True only after explicit ownership or permission confirmation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / action / description
      Added value: +"clone needs a free custom voice slot. If clone or check-create-access returns CUSTOM_VOICE_QUOTA_EXCEEDED, all custom voice slots are in use: use an existing voice from list, or have the user free a slot first. Buying credits does not add slots. Do not retry clone until a slot is freed."
  2. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  3. First observed

TDQS

A3.5/5.0
Behavior1/5

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

The annotations declare destructiveHint=false, but the description describes a delete action that requires explicit permanent-delete confirmation and calls it permanent-delete. That directly contradicts the annotation. The description otherwise adds useful quota, provenance, and confirmation behavior, but the contradiction forces a score of 1.

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?

The description is a long, dense paragraph that begins with a narrow caveat about cloned voice controls rather than the tool's main purpose. Most content is relevant for a complex 21-parameter tool, but it is not front-loaded or easily scannable.

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

Completeness4/5

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

For a complex multi-action tool with 21 parameters and no output schema, the description covers action routing, official versus custom capabilities, confirmation gates, quota behavior, and list return ordering. Some action-specific return details remain implicit, but overall it provides substantial context.

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

Parameters4/5

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

Schema coverage is 95%, so the baseline is 3, but the description adds constraints not present in the schema: reference audio must be 10–180 seconds and at most 25 MiB, Desktop video uses the complete default audio track, and sourceAssetId/sourceProjectId are provenance facts rather than voice recognition. It also clarifies that voiceType="all" returns custom voices first followed by filtered official voices.

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?

States that the tool manages official and cloned voices across list, clone, preview, rename, delete, and related actions, and distinguishes the read-only official catalog from custom-voice actions. It does not explicitly name or differentiate from the sibling manage_custom_voice tool, so sibling differentiation is incomplete.

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?

Gives explicit routing guidance: use action="list" with voiceType="all" for selection, official voices support only list, custom voices support list/check-create-access/apply/clone/preview/rename/delete, apply is optional, and clone/delete require explicit confirmations. It also says to ask when ambiguous, which is strong when-to-use and when-not-to-use guidance.

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.