Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:Elevenlabs Elevenlabs python ClientToolConfigOutput

From Leeroopedia
Revision as of 12:25, 16 February 2026 by Admin (talk | contribs) (Auto-imported from implementations/Elevenlabs_Elevenlabs_python_ClientToolConfigOutput.md)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Field Value
source Elevenlabs_Elevenlabs_python
domains Conversational AI, Tool Configuration, Client Tools
last_updated 2026-02-15

Overview

Description

ClientToolConfigOutput is a Pydantic model representing the output configuration for a client-side tool in the ElevenLabs conversational AI system. A client tool is one that sends an event to the user's client to trigger something on the client side. It defines the tool's name, description, parameters schema, timeout, interruption behavior, sound effects, error handling, dynamic variables, and execution mode. This model is auto-generated by Fern from the ElevenLabs API definition and extends UncheckedBaseModel.

Usage

This model is returned by the ElevenLabs API when retrieving tool configurations for a conversational agent. Client tools allow the agent to trigger actions on the client application during a conversation, such as displaying content, executing local operations, or gathering client-side data.

Code Reference

Source Location

src/elevenlabs/types/client_tool_config_output.py

Class Signature

class ClientToolConfigOutput(UncheckedBaseModel):
    """
    A client tool is one that sends an event to the user's client to trigger something client side
    """
    ...

Import Statement

from elevenlabs.types import ClientToolConfigOutput

I/O Contract

Field Type Required Description
name str Yes The name of the client tool.
description str Yes Description of when the tool should be used and what it does.
response_timeout_secs Optional[int] No The maximum time in seconds to wait for the tool call to complete. Must be between 1 and 120 seconds (inclusive).
disable_interruptions Optional[bool] No If true, the user will not be able to interrupt the agent while this tool is running.
force_pre_tool_speech Optional[bool] No If true, the agent will speak before the tool call.
assignments Optional[List[DynamicVariableAssignment]] No Configuration for extracting values from tool responses and assigning them to dynamic variables.
tool_call_sound Optional[ToolCallSoundType] No Predefined tool call sound type to play during tool execution.
tool_call_sound_behavior Optional[ToolCallSoundBehavior] No Determines when the tool call sound should play. 'auto' only plays when there's pre-tool speech, 'always' plays for every tool call.
tool_error_handling_mode Optional[ToolErrorHandlingMode] No Controls how tool errors are processed before being shared with the agent.
parameters Optional[ObjectJsonSchemaPropertyOutput] No Schema for any parameters to pass to the client.
expects_response Optional[bool] No If true, calling this tool should block the conversation until the client responds. If false, conversation continues without waiting.
dynamic_variables Optional[DynamicVariablesConfig] No Configuration for dynamic variables.
execution_mode Optional[ToolExecutionMode] No Determines when and how the tool executes: 'immediate', 'post_tool_speech', or 'async'.

Usage Examples

from elevenlabs.types import ClientToolConfigOutput

# Typically received as part of an API response
client_tool = ClientToolConfigOutput(
    name="show_product",
    description="Displays a product card to the user with details and pricing.",
    response_timeout_secs=30,
    expects_response=True,
    disable_interruptions=True,
)

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment