Skip to main content
Glama

Search voices

search_voices
Read-only

Find the right voice for a voiceover: the catalog of 500+ AI voices in 150+ languages and accents, plus the user's own cloned or designed voices and the ones their team shares. Filter by words (name, accent, style, use case such as narrator or ad), language and gender. Returns voice ids for generate_speech, with avatar images and preview audio links the user can listen to. For more results, pass section and the returned next-page cursor.

Input Schema

NameRequiredDescriptionDefault
qNoWords that must all appear in the voice's name, description or labels, e.g. "british", "calm narrator", "Ava".
sortNorecommended (the default), trending (most used in the last 7 days), usage (most used of all time), recent (newest first) or name (A to Z).
limitNoVoices per section.
cursorNoThe next-page cursor of the previous search, with the same section, filters and sort.
genderNo
labelsNoLabels the voice must all carry.
sectionNomyVoices (the user's own and their team's voices) or library (the public catalog): only that section, a page at a time.
languageNoThe voice's own language: a language ("en") or a locale ("en-GB"). Every voice speaks every supported language.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changed
    • addedInput schema / properties / cursor
      Added value: +{
      +  "description": "The next-page cursor of the previous search, with the same section, filters and sort.",
      +  "maxLength": 500,
      +  "type": "string"
      +}
    • addedInput schema / properties / labels
      Added value: +{
      +  "description": "Labels the voice must all carry.",
      +  "items": {
      +    "maxLength": 100,
      +    "type": "string"
      +  },
      +  "maxItems": 20,
      +  "type": "array"
      +}
    • changedInput schema / properties / language / description
      Previous value: -"The voice's own language: a language (\"en\") or a locale (\"en-GB\", \"vi-VN\"). Every voice can speak every language; generate_speech takes the locale to speak in."New value: +"The voice's own language: a language (\"en\") or a locale (\"en-GB\"). Every voice speaks every supported language."
    • addedInput schema / properties / limit / description
      Added value: +"Voices per section."
    • addedInput schema / properties / q
      Added value: +{
      +  "description": "Words that must all appear in the voice's name, description or labels, e.g. \"british\", \"calm narrator\", \"Ava\".",
      +  "maxLength": 200,
      +  "type": "string"
      +}
    • removedInput schema / properties / query
      Removed value: -{
      -  "description": "Words that must all appear in the voice's name, description or labels, e.g. \"british\", \"calm\", \"Ava\"",
      -  "maxLength": 200,
      -  "type": "string"
      -}
    • addedInput schema / properties / section
      Added value: +{
      +  "description": "myVoices (the user's own and their team's voices) or library (the public catalog): only that section, a page at a time.",
      +  "enum": [
      +    "myVoices",
      +    "library"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / sort
      Added value: +{
      +  "description": "recommended (the default), trending (most used in the last 7 days), usage (most used of all time), recent (newest first) or name (A to Z).",
      +  "enum": [
      +    "recommended",
      +    "trending",
      +    "usage",
      +    "recent",
      +    "name"
      +  ],
      +  "type": "string"
      +}
    • removedInput schema / properties / source
      Removed value: -{
      -  "default": "all",
      -  "description": "all voices (the user's and their team's first), the public catalog only, or only the user's and their team's voices",
      -  "enum": [
      -    "all",
      -    "catalog",
      -    "mine"
      -  ],
      -  "type": "string"
      -}
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the corpus composition (public catalog vs. own/team voices), the return payload (voice ids, avatar images, preview audio links), and the cursor-based pagination model. It does not mention result-count caps or per-section limits, but limit is documented in the schema.

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?

Three sentences, front-loaded with what the tool searches and immediately followed by filters, return payload, and pagination. Every clause carries information; no restatement of the title or annotations.

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 an 8-parameter, zero-required search tool with no output schema, the description still conveys corpus scope, filterable axes, the shape of results, and how to page. It omits default behavior when no filters are supplied and the default section, which an agent may still need to infer from the schema.

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 88%, so the baseline would be 3, but the description adds meaning the schema does not: the free-text query covers use-case words such as "narrator" or "ad", and the section parameter is the prerequisite for continuing a paged search. It says nothing extra about labels or sort, but those are self-documenting in the schema.

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 and resource ("Find the right voice") and then defines the searchable corpus precisely: the 500+ voice public catalog plus the user's cloned/designed voices and team-shared ones. It also distinguishes the tool's role from siblings by naming generate_speech as the downstream consumer of the returned voice ids.

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

Usage Guidelines4/5

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

Usage is clear from "Find the right voice for a voiceover" and the hand-off to generate_speech, and it explains how to continue paging (pass section plus the returned cursor). There are no explicit exclusions, so it does not tell the agent when to prefer design_voice or save_voice instead, which is the only gap.

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.