Skip to main content
Glama

Enroll Voiceprint

voice_id_enroll

Enroll a voiceprint for a speaker from ~2s of clear speech. Repeat with more clips to strengthen it.

Only an irreversible embedding is stored — never the raw audio.

Returns: dict with keys: speaker_id (str), n_samples (int), enrolled (bool).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
audioYesBase64-encoded WAV with >= 2s of clear speech
group_idYesThe group/namespace this speaker belongs to
speaker_idYesYour identifier for this speaker

TDQS

A4/5.0
Behavior4/5

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

The description adds meaningful behavioral context beyond the annotations: it discloses that only an irreversible embedding is stored, never raw audio, which is important for a voice-related tool. It also explains that repeated clips strengthen the enrollment. This is valuable transparency that the annotations alone do not provide.

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

Conciseness5/5

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

The description is compact and front-loaded: it opens with the core action, adds reinforcement guidance, then gives a crucial privacy note and return format. Every sentence adds value, and the return structure is presented clearly without unnecessary verbosity.

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?

The description covers the essential operational context: input requirements, repeat behavior, irreversibility, and return keys. Since there is no output schema, including the return dict is helpful. It could mention failure or duplicate-enrollment behavior, but for selection and invocation this is sufficiently complete.

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%, so the input schema already documents audio, speaker_id, and group_id. The description adds some context about audio duration and repeated enrollment, but does not add substantial new meaning for the parameters beyond what the schema already states. Baseline 3 is appropriate.

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?

States a specific verb ('Enroll') and resource ('voiceprint for a speaker'), with a clear input requirement (~2s of clear speech). The title and description match, and the action is clearly distinct from sibling tools like voice_id_identify, voice_id_verify, and voice_id_list_speakers.

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?

The description implies when to use this tool: when enrolling a new voiceprint from a speech clip. It also gives practical guidance about repeating enrollment to strengthen the voiceprint. However, it does not explicitly contrast with sibling tools or state when not to use it, e.g., when identification or verification is needed.

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

A3.8/5.0
Disambiguation4/5

Most tools map to clearly distinct actions, but transcribe_audio and transcribe_audio_pro are near-duplicates and the four check_*_service tools require careful reading. The detailed descriptions make the distinctions recoverable, so confusion should be rare.

Naming Consistency4/5

The set overwhelmingly follows a snake_case verb_* pattern, and the voice_id_* family is internally consistent. Minor deviations like get_phoneme_inventory vs list_tts_voices and the _pro suffix on transcribe_audio_pro keep it from being perfect.

Tool Count4/5

Fourteen tools is within a reasonable range, but the server bundles pronunciation, STT, TTS, voice ID, and four health checks, making it feel broader than the 'Pronunciation' name suggests. A few health checks could be consolidated, but nothing is excessive.

Completeness3/5

Core pronunciation, transcription, and synthesis workflows are present, but the voice ID portion has create/list/verify/identify with no way to delete or unenroll a speaker. That is a notable lifecycle gap in an otherwise fairly complete speech toolkit.

Resources