ElevenLabs
Connects to the ElevenLabs text-to-speech API. An agent can convert text to speech, list available voices, and check character usage for the current billing period.
Add to an agent node's tools array with _node_type: "tool-elevenlabs". See Connector Reference — How connectors are used.
Authentication
| Field | Required | Description |
|---|---|---|
api_key | Yes (or xi_api_key) | ElevenLabs API key, sent as the xi-api-key header. |
xi_api_key | Yes (if api_key not set) | Used if api_key is not set. |
{
"name": "elevenlabs",
"_node_type": "tool-elevenlabs",
"api_key": "{{ secret.ELEVENLABS_API_KEY }}"
}
Tools
elevenlabs_tts
Convert text to speech using ElevenLabs. Returns base64-encoded audio.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
text | string | Yes | Text to convert to speech |
voice_id | string | No | ElevenLabs voice ID (default: Rachel 21m00Tcm4TlvDq8ikWAM) |
model_id | string | No | Model ID (default: eleven_multilingual_v2) |
stability | number | No | Voice stability 0–1 (default 0.5) |
similarity | number | No | Similarity boost 0–1 (default 0.75) |
Returns: JSON with audio_base64 (base64-encoded MP3 audio), format ("mp3"), voice_id, and char_count.
elevenlabs_list_voices
List all available ElevenLabs voices with their IDs and names.
No parameters.
Returns: JSON with voices (array of {voice_id, name, category}) and count.
elevenlabs_get_usage
Get ElevenLabs character usage for the current billing period.
No parameters.
Returns: The raw JSON response from ElevenLabs' /v1/user/subscription endpoint.