Implementation:Elevenlabs Elevenlabs python McpServerConfigOutput
| Field | Value |
|---|---|
| source | Elevenlabs_Elevenlabs_python |
| domains | Conversational AI, MCP, Server Configuration, Tool Configuration |
| last_updated | 2026-02-15 |
Overview
Description
McpServerConfigOutput is a Pydantic model representing the output configuration for a Model Context Protocol (MCP) server in the ElevenLabs conversational AI system. It defines the MCP server connection details including URL, transport type, authentication, request headers, approval policies, and per-tool configuration overrides. MCP servers provide external tools that the conversational agent can invoke during a conversation. 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 MCP server configurations associated with a conversational agent. It describes how to connect to an MCP server and how the tools provided by that server should behave during conversations.
Code Reference
Source Location
src/elevenlabs/types/mcp_server_config_output.py
Class Signature
class McpServerConfigOutput(UncheckedBaseModel):
...
Import Statement
from elevenlabs.types import McpServerConfigOutput
I/O Contract
| Field | Type | Required | Description |
|---|---|---|---|
| approval_policy | Optional[McpApprovalPolicy] |
No | The approval policy for the MCP server. |
| tool_approval_hashes | Optional[List[McpToolApprovalHash]] |
No | List of tool approval hashes for per-tool approval when approval_policy is REQUIRE_APPROVAL_PER_TOOL. |
| transport | Optional[McpServerTransport] |
No | The transport type used to connect to the MCP server. |
| url | McpServerConfigOutputUrl |
Yes | The URL of the MCP server. If this contains a secret, store as a workspace secret; otherwise store as a plain string. Must use HTTPS. |
| secret_token | Optional[McpServerConfigOutputSecretToken] |
No | The secret token (Authorization header) stored as a workspace secret or in-place secret. |
| request_headers | Optional[Dict[str, McpServerConfigOutputRequestHeadersValue]] |
No | The headers included in the request. |
| name | str |
Yes | The name of the MCP server. |
| description | Optional[str] |
No | Description of the MCP server. |
| force_pre_tool_speech | Optional[bool] |
No | If true, all tools from this MCP server will require pre-tool execution speech. |
| disable_interruptions | Optional[bool] |
No | If true, the user will not be able to interrupt the agent while any tool from this MCP server is running. |
| tool_call_sound | Optional[ToolCallSoundType] |
No | Predefined tool call sound type to play during tool execution for all tools from this MCP server. |
| tool_call_sound_behavior | Optional[ToolCallSoundBehavior] |
No | Determines when the tool call sound should play for all tools from this MCP server. |
| execution_mode | Optional[ToolExecutionMode] |
No | Determines when and how all tools from this MCP server execute: 'immediate', 'post_tool_speech', or 'async'. |
| tool_config_overrides | Optional[List[McpToolConfigOverride]] |
No | List of per-tool configuration overrides that override the server-level defaults for specific tools. |
| disable_compression | Optional[bool] |
No | Whether to disable HTTP compression for this MCP server. Enable this if the server does not support compressed responses. |
Usage Examples
from elevenlabs.types import McpServerConfigOutput
# Typically received as part of an API response
mcp_config = McpServerConfigOutput(
name="my-mcp-server",
description="Custom MCP server for database lookups",
url=McpServerConfigOutputUrl(...),
transport="sse",
disable_interruptions=True,
execution_mode="immediate",
)