Skip to main content
Glama

Create a voice agent

create_agent

Create a new Phone Bud voice agent — a reusable persona (system prompt + voice + settings) that make_call and start_campaign can use via its id. Voice can be a preset name or a 32-character Fish Audio reference id (e.g. a published voice clone).

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": {
      "name": "<name>",
      "system_prompt": "<system_prompt>"
    },
    "name": "create_agent"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYesAgent name, e.g. 'Restaurant Booker'.
speedNoSpeaking-rate multiplier (Fish prosody.speed): 1.0 = normal, below 1 slower, above 1 faster. Clamped to 0.5–2. Default 1.0.
voiceNoPreset voice name — Wesley (American male, warm and friendly), Grant (American male, polished), Beau (American male, laid-back), Bobby (Southern US male, relaxed), Sheila (American female, young and natural), Harper (American female, crisp and professional), Beulah (Southern US female, older and friendly), Avery (Canadian female, clear and friendly), Megan (British female (London), warm and relaxed), Sophia (British female, professional), Oliver (British male, clear and professional), Hamish (Scottish male, older and warm), Cathal (Irish male, warm and gentle), Chloe (Australian female, clear and confident), Dean (Australian male, friendly), Priya (Indian female, clear and professional), Rohan (Indian male, clear and confident), Lerato (South African female, confident), Amara (Nigerian female, clear and confident), Karanja (Kenyan male, upbeat) — or a 32-character Fish Audio reference id. Default: Wesley.
greetingNoDefault first sentence the agent speaks when the callee answers.
tts_modelNoFish TTS model: 's1' (stable, default) or 's2-pro' (higher quality).
descriptionNoShort human-readable description shown in the agent list.
is_favoriteNoMake this the default agent for calls/campaigns that don't specify one.
temperatureNoDeprecated and ignored: the call LLM's sampling is set server-wide.
system_promptYesThe agent's persona and standing instructions, used on every call.
background_soundNoThe room the agent seems to call from, a quiet sound under its voice. 'none' is a silent line. Default: 'office'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare the mutation profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false), so the description needn't restate safety. It adds real context by describing the agent as a reusable persona referenced by id from calls and campaigns, but it omits that non-idempotent creation can produce duplicate-name agents and says nothing about permissions.

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?

Two sentences, front-loaded with the action and the artifact definition, with no filler. The second sentence largely restates voice-format detail already present in the schema, which is a small redundancy but not bloat.

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 10-parameter creation tool with full schema coverage and no output schema, the description covers what is being created and how the result is consumed ('via its id'), which implicitly signals an id is returned. Missing only edge-case behavior (duplicate names, auth) that would make it fully self-sufficient.

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 voice enum/predefined names are already exhaustively documented in the schema, so the schema does the heavy lifting. The description adds only marginal meaning beyond it — the parenthetical that a 32-character reference id can be 'a published voice clone' — so the baseline of 3 applies.

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?

The description opens with a specific verb and resource ('Create a new Phone Bud voice agent') and defines what the artifact is ('a reusable persona (system prompt + voice + settings)'). It implicitly separates creation from the update_agent sibling but never names or contrasts it, which keeps it just short of a 5.

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 usefully explains the downstream purpose — the created agent is consumable by make_call and start_campaign via its id — which implies the reason to create one. However, there is no explicit when-to-use versus update_agent/list_agents guidance, and no note on what to do if a similar agent already exists.

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