voicegen-port
Provides tools for interacting with the ElevenLabs API, including text-to-speech, sound-effect generation, speech-to-text transcription, audio isolation, voice search and management, voice design from prompts, and retrieving model, subscription, and user information.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@voicegen-portTurn 'Welcome to the show' into speech with a calm British narrator."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
voicegen-port
voicegen-port turns text into spoken audio, and audio back into text, through the ElevenLabs API. It can read a paragraph aloud in a chosen voice, invent a sound effect from a description, transcribe a recording, clean a noisy clip down to its voice, and manage the voice library itself — designing new voices from a written description and saving the ones worth keeping. It runs from the command line or as an MCP server for agents.
An ElevenLabs API key is required. Put it in the
ELEVENLABS_API_KEY environment variable; the key is sent to the
API as the xi-api-key header and never appears in output. When the
variable is missing, every call fails with an error that names it.
Audio is binary, and this tool treats it honestly: generation calls report an artifact summary (byte count, base64 length, content type) instead of dumping raw audio into text output.
Install
npx @reneturcios/voicegen-port voicesOr run the container image:
docker run -i -e ELEVENLABS_API_KEY ghcr.io/cloudcorprecords/voicegen-portThe container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
Related MCP server: ElevenLabs MCP Server
CLI
export ELEVENLABS_API_KEY="your ElevenLabs API key"
voicegen-port tts "Welcome to the show" --voice v_george
voicegen-port sfx "rain on a tin roof" --duration 4
voicegen-port stt interview.mp3 --language en
voicegen-port isolate noisy-call.mp3
voicegen-port voices
voicegen-port voice v_rachel
voicegen-port search-voices "narrator" --page-size 5
voicegen-port design "A calm British narrator" --text "Sample line"
voicegen-port create-from-preview gen_1 "Calm Narrator"
voicegen-port add-voice "Studio Voice" --description "Warm and close"
voicegen-port delete-voice v_old
voicegen-port models
voicegen-port subscription
voicegen-port user
voicegen-port --versionExit codes: 0 on success, 1 when a call fails (including a
missing ELEVENLABS_API_KEY or an API error), 2 for usage errors.
MCP server
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
npx -y @reneturcios/voicegen-port mcpMCP client configuration:
{
"mcpServers": {
"voicegen-port": {
"command": "npx",
"args": ["-y", "@reneturcios/voicegen-port", "mcp"],
"env": { "ELEVENLABS_API_KEY": "your ElevenLabs API key" }
}
}
}Tools
This is the documented core subset (14 tools) of the official
ElevenLabs MCP server. The conversational-AI and telephony tools
(create_agent, list_agents, get_agent, delete_agent,
add_knowledge_base_to_agent, make_outbound_call,
list_phone_numbers) plus voice_clone, speech_to_speech, and
play_audio are not implemented; see the build report.
Tool | Input | What it returns |
|
| Audio artifact summary: bytes, base64 length, content type. |
|
| Audio artifact summary for the generated effect. |
|
| The transcription payload, including its text. |
|
| Audio artifact summary for the isolated voice track. |
| — | All voices: id, name, and category per voice. |
|
| The full voice record. |
|
| Matching voices in the same summary shape. |
|
| Voice design previews, including generated voice ids. |
|
| The saved voice record. |
|
| The added voice record. |
|
| The API's deletion response. |
| — | All models: id, name, and description per model. |
| — | The account's subscription record. |
| — | The API key owner's user record. |
Calls go to https://api.elevenlabs.io/v1 with JSON bodies.
speech_to_text and add_voice are multipart uploads upstream;
this rebuild shapes them as JSON bodies naming the file / voice, a
simplification recorded in the build report.
Development
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev # run the CLI from source via tsxLicense
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage ElevenLabs voice agents and generate speech, music, sound effects, images, and video.
Audio for your agent: transcribe, speak, translate, summarise, plus sound effects and music.
ElevenLabs in natural language: generate speech in any language, create and manage voices, compose m
Audio and video tools for your AI assistant: remove noise, enhance voices, transcribe, and more.
Related MCP Servers
- AlicenseAqualityBmaintenanceIntegrates with ElevenLabs text-to-speech API.6119MIT
- AlicenseAqualityNot gradedmaintenanceEnables interaction with ElevenLabs Text-to-Speech and audio processing APIs. Supports speech generation, voice cloning, audio transcription, and sound effect creation through natural language.24MIT
- AlicenseNot gradedqualityDmaintenanceProvides comprehensive access to ElevenLabs AI audio features including text-to-speech, voice cloning, sound generation, and audio isolation. Enables users to generate high-quality speech, manage voices, transform audio, and access ElevenLabs services through natural language interactions.103 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables seamless integration with ElevenLabs Conversational AI to manage agents, tools, and knowledge base sources. It supports RAG indexing, webhook integration, and document management for building advanced voice-enabled AI agents.MIT