Cartesia text-to-speech: synthesize speech audio and browse voices. Trigger phrases: cartesia, text to speech, TTS, synthesize voice, voiceover.
npx skills add https://github.com/Anil-matcha/awesome-muse-connectors --skill cartesia
Generate spoken audio from text with Cartesia's Sonic models (40+ languages) and browse the Cartesia voice library. Reach for this when the user wants narration, voiceovers, or spoken-audio files produced from a script.
All commands go through bin/cartesia.py. Every request automatically sends the required date header Cartesia-Version: 2026-08-14.
bin/cartesia.py auth
# {"ok": true, "voices": 60} on success
bin/cartesia.py voices
# list available voices (id, name, language)
bin/cartesia.py voice-get --id <VOICE_ID>
# details for a single voice
bin/cartesia.py tts --text "Hello world" --voice-id <VOICE_ID> --out narration.wav
# synthesize speech to a local WAV file; prints the saved path
bin/cartesia.py tts --text "Bonjour le monde" --voice-id <VOICE_ID> \
--language fr --model-id sonic-3 --out fr.wav
Notes:
tts returns audio binary. The CLI writes it to --out (default cartesia-output.wav) and prints the resulting path.POST /tts/sse) and the WebSocket TTS/STT surfaces are real-time and outside CLI scope.cartesia (credential is collected as custom.cartesia)sk_car_...) via the secure credential flow (credentials.request_api_access); create one at play.cartesia.ai/keysapi.cartesia.aibearer_header (the key goes in Authorization: Bearer <key>)Cartesia-Version: 2026-08-14 on every request; the CLI sends it for you.bin/cartesia.py authtts call spends Cartesia credits, so synthesize only what the user asked for and batch long scripts into as few calls as possible.Cartesia-Version: 2026-08-14. Treat a version bump like a dependency upgrade and do not change the date casually.🧪 Draft: written from Cartesia's public API docs with header and paths cross-checked against official docs at build time; not yet live-tested end-to-end. Voice create/clone and pronunciation dictionaries are not yet in the CLI.
Take anil-matcha/cartesia from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.