or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

audio

audio-processing.mdrealtime-transcription.mdspeech-to-speech.mdspeech-to-text.mdtext-to-speech.md
index.md
tile.json

mcp-servers.mddocs/conversational/

MCP Servers

Manage Model Context Protocol (MCP) servers for enhanced agent capabilities.

Quick Reference

import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";

const client = new ElevenLabsClient({ apiKey: "your-api-key" });
// Access this API via: client.conversationalAi.mcpServers

MCP Server Management

/**
 * List all MCP server configurations
 */
client.conversationalAi.mcpServers.list(
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServersResponseModel>;

/**
 * Create a new MCP server configuration
 */
client.conversationalAi.mcpServers.create(
  request: McpServerRequestModel,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Get a specific MCP server configuration
 */
client.conversationalAi.mcpServers.get(
  mcp_server_id: string,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Update an MCP server configuration
 */
client.conversationalAi.mcpServers.update(
  mcp_server_id: string,
  request?: McpServerConfigUpdateRequestModel,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Delete an MCP server configuration
 */
client.conversationalAi.mcpServers.delete(
  mcp_server_id: string,
  requestOptions?: RequestOptions
): HttpResponsePromise<unknown>;

/**
 * List tools available for an MCP server
 */
client.conversationalAi.mcpServers.tools.list(
  mcp_server_id: string,
  requestOptions?: RequestOptions
): HttpResponsePromise<ListMcpToolsResponseModel>;

/**
 * Add approval for a specific MCP tool (per-tool approval mode)
 */
client.conversationalAi.mcpServers.toolApprovals.create(
  mcp_server_id: string,
  request: McpToolAddApprovalRequestModel,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Remove approval for a specific MCP tool (per-tool approval mode)
 */
client.conversationalAi.mcpServers.toolApprovals.delete(
  mcp_server_id: string,
  tool_name: string,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Update approval policy for MCP server
 * DEPRECATED: Use PATCH /mcp-servers/{id} endpoint instead
 */
client.conversationalAi.mcpServers.approvalPolicy.update(
  mcp_server_id: string,
  request: McpApprovalPolicyUpdateRequestModel,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Create configuration overrides for a specific MCP tool
 */
client.conversationalAi.mcpServers.toolConfigs.create(
  mcp_server_id: string,
  request: McpToolConfigOverrideCreateRequestModel,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Get configuration overrides for a specific MCP tool
 */
client.conversationalAi.mcpServers.toolConfigs.get(
  mcp_server_id: string,
  tool_name: string,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpToolConfigOverride>;

/**
 * Update configuration overrides for a specific MCP tool
 */
client.conversationalAi.mcpServers.toolConfigs.update(
  mcp_server_id: string,
  tool_name: string,
  request?: McpToolConfigOverrideUpdateRequestModel,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

/**
 * Delete configuration overrides for a specific MCP tool
 */
client.conversationalAi.mcpServers.toolConfigs.delete(
  mcp_server_id: string,
  tool_name: string,
  requestOptions?: RequestOptions
): HttpResponsePromise<McpServerResponseModel>;

interface McpServerRequestModel {
  /** MCP server configuration */
  config: {
    /** Server URL */
    url: string;
    /** Server name */
    name: string;
  };
}

interface McpServerConfigUpdateRequestModel {
  /** Updated configuration fields */
  config?: {
    url?: string;
    name?: string;
  };
}

interface McpToolAddApprovalRequestModel {
  /** Name of the tool to approve */
  toolName: string;
  /** Description of the tool */
  toolDescription: string;
}

interface McpApprovalPolicyUpdateRequestModel {
  /** Approval policy mode */
  approvalPolicy: "auto_approve_all" | "manual_approve" | "per_tool";
}

interface McpToolConfigOverrideCreateRequestModel {
  /** Name of the tool to configure */
  toolName: string;
  /** Optional configuration overrides */
  config?: Record<string, unknown>;
}

interface McpToolConfigOverrideUpdateRequestModel {
  /** Updated configuration overrides */
  config?: Record<string, unknown>;
}