Skip to main content
Glama
smallest-inc

Smallest MCP Server

Official
by smallest-inc

update_agent

Update an AI voice agent's configuration—prompt, voice, model, language, variables, pre-call API, and more. Only specified fields change; edits save to a draft, ready to test or publish.

Instructions

Update an agent — name, prompt/instructions, first message, voice, model, language, variables, the pre-call API, and other settings. Only provided fields are updated. Config changes are saved to the branch's draft (publish_draft to make them live, or test first with test_agent using include_draft); metadata (name, phone numbers, inbound toggle) applies immediately. To add/remove the agent's API-call tools use add_agent_tool / remove_agent_tool; for end_call/transfer use configure_call_actions. To manage post-call disposition metrics use add_disposition_metrics / remove_disposition_metrics (upsert/remove by identifier; existing metrics are preserved) — get_agent lists the current ones.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoNew agent name
promptNoThe agent's system prompt / instructions (full text). single_prompt agents only.
agent_idYesThe agent ID to update
languageNoLanguage configuration
branch_idNoBranch whose draft to edit (from list_branches). Omit to use the live branch; if the agent has multiple branches you'll be asked to pick one.
slm_modelNoInference LLM model for the agent
descriptionNoAgent description
synthesizerNoVoice synthesizer configuration
pre_call_apiNoConfigure (or disable) the pre-call API — an HTTP request the platform makes automatically BEFORE the call connects to enrich the agent with data. Runs once and is not chosen by the LLM (unlike add_agent_tool, which the agent invokes during the call).
first_messageNoFirst message when call starts (max 500 chars)
global_promptNoGlobal system prompt for the agent (max 4000 chars). This is separate from the main prompt (the `prompt` field).
background_soundNoBackground sound option
denoising_configNoAudio denoising configuration
redaction_configNoRedaction configuration
transcriber_typeNoSpeech-to-text (STT) transcriber. 'pulse' is the current default and recommended option (widest language support). 'pulse-legacy' is the older model, deprecated and only available to allowlisted organizations — prefer 'pulse'. Note: 'gpt-realtime'/'gpt-realtime-mini' transcribers are set automatically when using a speech-to-speech LLM model and should not be set here.
default_variablesNoDefault variables for the agent prompt. Example: { prospect_name: 'Default', company: 'Acme' }
knowledge_base_idNoKnowledge base ID to attach to the agent
smart_turn_configNoSmart turn detection configuration
speech_formattingNoEnable speech formatting
allow_inbound_callNoWhether to allow inbound calls
enable_style_guideNoEnable conversational style guide
allow_interruptionsNoWhether to allow user interruptions
pronunciation_dictsNoCustom pronunciation dictionary
voicemail_detectionNoVoicemail detection configuration
telephony_product_idsNoTelephony product IDs (see get_phone_numbers) to assign to this agent. Takes effect IMMEDIATELY — number assignment is agent metadata, not versioned config, so no draft/publish is involved. Replaces the agent's current numbers; assigning a number already attached to another agent moves it. Pass [] to unassign all.
session_timeout_configNoSession timeout configuration
voice_detection_configNoVoice activity detection configuration
add_disposition_metricsNoPost-call disposition metrics to add or update (upsert by identifier). Only these are changed; existing metrics and the summary prompt are preserved. Saved to the branch draft.
call_disposition_configNoCall disposition configuration prompt
llm_idle_timeout_configNoLLM idle timeout configuration per call type
interruption_backoff_timerNoDelay in seconds before agent resumes after interruption (0-10)
remove_disposition_metricsNoIdentifiers of post-call disposition metrics to remove from the branch draft.
wait_for_user_to_speak_firstNoWait for user to speak before agent starts
mute_user_until_first_bot_responseNoMute user audio until the bot sends its first response
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses that only provided fields are updated, that config changes go to draft while metadata (name, phone numbers, inbound toggle) apply immediately, and that phone number assignment replaces existing numbers. It does not explicitly mention rate limits or authentication, but the mutative nature is clear.

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?

The description is a single dense paragraph that front-loads the purpose and then provides workflow and tool differentiation. It is concise but could be more structured (e.g., bullet points) for easier parsing. No redundant sentences.

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?

Given the high parameter count (34) and no output schema, the description covers the key aspects: what fields can be updated, the draft/publish workflow, immediate updates, and alternative tools. It is missing a note on the return value (expected to be the updated agent) and that some fields are for single_prompt agents only (but schema covers that).

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 baseline is 3. The description groups parameters and adds workflow context (draft vs immediate) but does not add significant detail beyond the schema except for the pre-call API explanation. Schema already describes most parameters adequately.

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?

The description clearly states the tool updates an agent's settings (name, prompt, etc.) and distinguishes itself from sibling tools like add_agent_tool, remove_agent_tool, configure_call_actions, and add/remove_disposition_metrics. The verb 'update' and resource 'agent' are explicit.

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?

The description explicitly states when to use this tool vs alternatives: 'To add/remove the agent's API-call tools use add_agent_tool / remove_agent_tool; for end_call/transfer use configure_call_actions. To manage post-call disposition metrics use add_disposition_metrics / remove_disposition_metrics'. It also explains the draft/publish workflow and immediate metadata updates.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/smallest-inc/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server