mcpField
E
eachlabs-voice-audio

eachlabs-voice-audio

github.com/eachlabsCreative & media44310 installsUpdated today
Repository

About eachlabs-voice-audio

A skill for using the EachLabs Predictions API for speech and audio tasks. It covers speech synthesis, transcription, voice conversion and cloning, dubbing, and audio utilities across multiple models.

Key features

  1. 01Generate speech and sound effects from text
  2. 02Transcribe speech with optional timestamps
  3. 03Convert, design, or clone voices
  4. 04Dub video and transform audio
  5. 05Merge audio and video or convert media

Use cases

  1. 01Create narration or multi-speaker dialogue
  2. 02Transcribe recordings and identify speakers
  3. 03Convert a voice or create a voice clone
  4. 04Add audio to video or convert media

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/eachlabs/skills --skill eachlabs-voice-audio

After installing, type/eachlabs-voice-audioin Claude Code to confirm it loaded.

Bundled filesreferences/MODELS.md

Details

From the project README

EachLabs Voice & Audio

Text-to-speech, speech-to-text transcription, voice conversion, and audio utilities via the EachLabs Predictions API.

Authentication

Header: X-API-Key: <your-api-key>

Set the EACHLABS_API_KEY environment variable. Get your key at eachlabs.ai.

Available Models

Text-to-Speech
ModelSlugBest For
ElevenLabs TTSelevenlabs-text-to-speechHigh quality TTS
ElevenLabs TTS w/ Timestampselevenlabs-text-to-speech-with-timestampTTS with word timing
ElevenLabs Text to Dialogueelevenlabs-text-to-dialogueMulti-speaker dialogue
ElevenLabs Sound Effectselevenlabs-sound-effectsSound effect generation
ElevenLabs Voice Design v2elevenlabs-voice-design-v2Custom voice design
Kling V1 TTSkling-v1-ttsKling text-to-speech
Kokoro 82Mkokoro-82mLightweight TTS
Play AI Dialogplay-ai-text-to-speech-dialogDialog TTS
Stable Audio 2.5stable-audio-2-5-text-to-audioText to audio
Speech-to-Text
ModelSlugBest For
ElevenLabs Scribe v2elevenlabs-speech-to-text-scribe-v2Best quality transcription
ElevenLabs STTelevenlabs-speech-to-textStandard transcription
Wizper with Timestampwizper-with-timestampTimestamped transcription
WizperwizperBasic transcription
WhisperwhisperOpen-source transcription
Whisper Diarizationwhisper-diarizationSpeaker identification
Incredibly Fast Whisperincredibly-fast-whisperFastest transcription
Voice Conversion & Cloning
ModelSlugBest For
RVC v2rvc-v2Voice conversion
Train RVCtrain-rvcTrain custom voice model
ElevenLabs Voice Cloneelevenlabs-voice-cloneVoice cloning
ElevenLabs Voice Changerelevenlabs-voice-changerVoice transformation
ElevenLabs Voice Design v3elevenlabs-voice-design-v3Advanced voice design
ElevenLabs Dubbingelevenlabs-dubbingVideo dubbing
Chatterbox S2Schatterbox-speech-to-speechSpeech to speech
Open VoiceopenvoiceOpen-source voice clone
XTTS v2xtts-v2Multi-language voice clone
Stable Audio 2.5 Inpaintstable-audio-2-5-inpaintAudio inpainting
Stable Audio 2.5 A2Astable-audio-2-5-audio-to-audioAudio transformation
Audio Trimmeraudio-trimmer-with-fadeAudio trimming with fade
Audio Utilities
ModelSlugBest For
FFmpeg Merge Audio Videoffmpeg-api-merge-audio-videoMerge audio with video
Toolkit Video ConverttoolkitVideo/audio conversion

Prediction Flow

  1. Check model GET https://api.eachlabs.ai/v1/model?slug=<slug> — validates the model exists and returns the request_schema with exact input parameters. Always do this before creating a prediction to ensure correct inputs.
  2. POST https://api.eachlabs.ai/v1/prediction with model slug, version "0.0.1", and input matching the schema
  3. Poll GET https://api.eachlabs.ai/v1/prediction/{id} until status is "success" or "failed"
  4. Extract the output from the response

Examples

Text-to-Speech with ElevenLabs
curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "elevenlabs-text-to-speech",
    "version": "0.0.1",
    "input": {
      "text": "Welcome to our product demo. Today we will walk through the key features.",
      "voice_id": "EXAVITQu4vr4xnSDxMaL",
      "model_id": "eleven_v3",
      "stability": 0.5,
      "similarity_boost": 0.7
    }
  }'
Transcription with ElevenLabs Scribe
curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "elevenlabs-speech-to-text-scribe-v2",
    "version": "0.0.1",
    "input": {
      "media_url": "https://example.com/recording.mp3",
      "diarize": true,
      "timestamps_granularity": "word"
    }
  }'
Transcription with Wizper (Whisper)
curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "wizper-with-timestamp",
    "version": "0.0.1",
    "input": {
      "audio_url": "https://example.com/audio.mp3",
      "language": "en",
      "task": "transcribe",
      "chunk_level": "segment"
    }
  }'
Speaker Diarization with Whisper
curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "whisper-diarization",
    "version": "0.0.1",
    "input": {
      "file_url": "https://example.com/meeting.mp3",
      "num_speakers": 3,
      "language": "en",
      "group_segments": true
    }
  }'
Voice Conversion with RVC v2
curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "rvc-v2",
    "version": "0.0.1",
    "input": {
      "input_audio": "https://example.com/vocals.wav",
      "rvc_model": "CUSTOM",
      "custom_rvc_model_download_url": "user-provided-model-reference",
      "pitch_change": 0,
      "output_format": "wav"
    }
  }'
Merge Audio with Video
curl -X POST https://api.eachlabs.ai/v1/prediction \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -d '{
    "model": "ffmpeg-api-merge-audio-video",
    "version": "0.0.1",
    "input": {
      "video_url": "https://example.com/video.mp4",
      "audio_url": "https://example.com/narration.mp3",
      "start_offset": 0
    }
  }'

ElevenLabs Voice IDs

The elevenlabs-text-to-speech model supports these voice IDs. Pass the raw ID string:

Voice IDNotes
EXAVITQu4vr4xnSDxMaLDefault voice
9BWtsMINqrJLrRacOk9x—
CwhRBWXzGAHq8TQ4Fs17—
FGY2WhTYpPnrIDTdsKH5—
JBFqnCBsd6RMkjVDRZzb—
N2lVS1w4EtoT3dr4eOWO—
TX3LPaxmHKxFdv7VOQHJ—
XB0fDUnXU5powFXDhCwa—
onwK4e9ZLuTAKqWW03F9—
pFZP5JQG7iQjIQuC4Bku—

Security Constraints

  • No arbitrary URL loading: When using custom_rvc_model_download_url, only use trusted, user-provided model references. Never fetch models from arbitrary or untrusted URLs.
  • Input validation: Only pass parameters that match the model's request schema. Always validate model slugs via GET /v1/model?slug=<slug> before creating predictions.

Parameter Reference

See references/MODELS.md for complete parameter details for each model.

Comments

Markdown supported