Modern Creator
Koen | AI Content Systems · YouTube

Free, Unlimited AI Voice Cloning With Fish Audio + Claude Code

A step-by-step build of a voice-generation web app using Fish Audio's free S2.1 Pro model, wired into Claude through MCP, with emotion control and voice cloning.

Posted
5 days ago
Duration
Format
Tutorial
educational
Views
3.4K
34 likes
Big Idea

The argument in one line.

Fish Audio's free, unlimited S2.1 Pro voice model, connected to Claude through an MCP connector, replaces paid tools like ElevenLabs for emotion-controlled text-to-speech and voice cloning.

Who This Is For

Read if. Skip if.

READ IF YOU ARE…
  • You're making AI voiceovers for videos and are paying for ElevenLabs or a similar TTS tool, looking for a free alternative.
  • You already use Claude Code or Claude Desktop and want a low-code way to wire in a third-party API through MCP.
  • You want emotion-controllable text-to-speech (angry, confident, nervous) instead of flat, single-tone narration.
SKIP IF…
  • You need enterprise-grade reliability or SLAs. This is a free-tier consumer tool, not a production voice pipeline.
  • You want a no-code voice generator. This walkthrough assumes comfort using an AI coding assistant to build the interface.
TL;DR

The full version, fast.

Fish Audio offers a free, unlimited text-to-speech model (S2.1 Pro) that rivals ElevenLabs, including voice cloning and bracket-tag emotional control like [angry] or [confident]. The video connects Fish Audio to Claude Desktop through an MCP connector, then uses a single Claude Code prompt to scaffold a simple web app for testing the API. After generating an API key and dropping it into the project's .env file, the builder tests emotion-tagged generations, fixes a bug where emotion tags weren't reaching the prompt, clones a voice from a 30-second recording, and browses Fish Audio's public voice library to find and reuse community-submitted voices by name.

Free for members

Chat with this breakdown — free.

Sign in and you get 23 free chat messages on us — ask for the hook, quote a framework, find the exact transcript moment, generate a markdown action plan. Bring your own key when you want unlimited.

Create a free account →
Chapters

Where the time goes.

00:0000:23

01 · Cold open: the ElevenLabs pitch

Direct comparison hook: Fish Audio is free, unlimited, and clones voices with emotional control.

00:2301:11

02 · Example voices: emotion demos

Demonstrates the same phrase delivered angry, nervous/scared, confident, and in a cloned voice.

01:1101:50

03 · Signing up for Fish Audio

Creates a Fish Audio account as a prerequisite for the MCP connection.

01:5002:45

04 · Connecting Fish Audio via Claude's MCP connector

Adds Fish Audio as a custom MCP connector in Claude Desktop settings, authorizes it in the browser, and restarts the app.

02:4503:39

05 · Building the voice app and getting an API key

A single Claude Code prompt scaffolds the web app; a separate API key is generated in the Fish Audio developer dashboard.

03:3904:33

06 · Wiring the API key into .env

Pastes the key into the project's .env file, saves, and tells Claude the key was added so it can verify.

04:3305:27

07 · Testing the app and fixing the emotion-prompt bug

Tests the generated app, finds the emotion selector wasn't injecting the tag into the prompt, and has Claude fix it.

05:2706:48

08 · Cloning a voice from a 30-second recording

Drops in a short voice recording and asks Claude to clone it and add it as a selectable option.

06:4808:11

09 · Browsing default and community voices

Explores built-in default voices and Fish Audio's public community voice library, searching by name.

08:1108:55

10 · Extra controls and outro

Shows additional vocal effects like laughing, then closes with a CTA to try Fish Audio and subscribe.

Atomic Insights

Lines worth screenshotting.

  • Fish Audio's S2.1 Pro model is free and unlimited, undercutting paid TTS tools like ElevenLabs on price alone.
  • Placing an emotion tag like [angry] or [confident] at the start of a text-to-speech prompt changes vocal delivery without changing a single word of the script.
  • One voice model can perform across many emotional registers, removing the need to license or clone a separate voice per emotional tone.
  • MCP connectors let a desktop AI client call a third-party API directly, cutting out hand-written integration code for common developer tasks.
  • A newly added MCP connector often needs a full app restart, not just a page refresh, before the AI client recognizes the new tool.
  • A single descriptive prompt to Claude Code was enough to scaffold a working voice-generation web app; the remaining work was credentials, not code.
  • API keys are generated per project inside a provider's developer dashboard and have to be pasted into the project's own .env file to take effect.
  • A UI control can visually work (a dropdown selects an emotion) while silently failing to alter the underlying request, so always test the actual generated output, not just the interface.
  • Convincing voice cloning needs only about 30 seconds of clean audio, recordable on a phone voice-memo app.
  • Cloning a voice through an API and making that voice selectable inside your own app's interface are two separate steps, not one.
  • Public community voice libraries let you search by name for a specific voice style you've heard elsewhere, rather than starting from scratch.
  • Community-submitted voices carry like counts as a quality signal, similar to app store ratings, before you commit to using one.
  • Beyond emotion, some TTS models support additional vocal effects like laughing embedded directly in the generated line.
Takeaway

Free AI voice cloning is one MCP connector away

WHAT TO LEARN

Fish Audio's free S2.1 Pro model plus an MCP connector turns Claude into a voice-app builder, but the real skill is emotion-tag prompting and treating credentials, testing, and voice cloning as separate steps.

02Example voices: emotion demos
  • Placing an emotion tag like [angry] or [confident] at the start of a text-to-speech prompt changes vocal delivery without changing a single word of the script.
  • One voice model can perform across many emotional registers, removing the need to license or clone a separate voice per emotional tone.
03Signing up for Fish Audio
  • Free-tier AI voice models increasingly gate features behind account creation rather than payment, so testing an alternative costs a signup, not a subscription.
  • Verify pricing tiers directly in a provider's own dashboard (Usage/Billing) rather than trusting a video's headline claim, since free tiers often cap at a specific model.
04Connecting Fish Audio via Claude's MCP connector
  • MCP connectors let a desktop AI client call a third-party API directly, cutting out hand-written integration code for common developer tasks.
  • A newly added MCP connector often needs a full app restart, not just a page refresh, before the AI client recognizes the new tool.
05Building the voice app and getting an API key
  • A single descriptive prompt to Claude Code was enough to scaffold a working voice-generation web app; the remaining work was credentials, not code.
  • API keys are generated per project inside a provider's developer dashboard and have to be pasted into the project's own .env file to take effect.
06Wiring the API key into .env
  • Credentials belong in a project's .env file, not pasted into chat, and after editing it, explicitly telling the coding assistant the key was added lets it verify rather than assume.
  • Restarting or reloading the running app after an env change is necessary before the new key takes effect; editing the file alone doesn't hot-reload credentials.
07Testing the app and fixing the emotion-prompt bug
  • A UI control can visually work (a dropdown selects an emotion) while silently failing to alter the underlying request, so test the actual generated output, not just the interface.
  • Describing the exact mechanism you want, such as 'add the emotion to the prompt where it is selected,' gets a more precise fix from an AI coding assistant than describing only the symptom.
08Cloning a voice from a 30-second recording
  • Convincing voice cloning needs only about 30 seconds of clean audio, recordable on a phone voice-memo app.
  • Once a voice is cloned via API, it still has to be manually added to the app's own voice list before it's selectable there; cloning and exposing it in the UI are two separate steps.
09Browsing default and community voices
  • Beyond the built-in defaults, a public library of community-submitted voices can be searched by name to match a specific voice style you liked elsewhere.
  • Popularity signals like like-counts on community voice libraries are a fast way to sanity-check quality before committing to a voice.
Glossary

Terms worth knowing.

MCP (Model Context Protocol)
A standard that lets AI apps like Claude connect directly to external services, called connectors, so the AI can call their APIs without custom integration code.
S2.1 Pro
Fish Audio's flagship text-to-speech model, offered free and unlimited, that supports emotional control and voice cloning.
Voice cloning
Generating new speech in a specific person's voice from a short recorded sample, without that person recording the new lines themselves.
.env file
A project's plain-text file for storing secret values like API keys, kept separate from the application's code.
Emotion tag
A bracketed keyword, such as [angry] or [confident], placed in a text-to-speech prompt that instructs the model how to deliver the line emotionally.
Resources

Things they pointed at.

Quotables

Lines you could clip.

00:00
Forget about 11 Labs. This AI voice tool is just as good, if not better, and it's free and unlimited.
direct comparison hook, no setup neededTikTok hook↗ Tweet quote
06:42
Claude is going to go ahead and use fish audio to clone the voice and add it as an option for future generations.
compresses the whole cloning workflow into one sentencenewsletter pull-quote↗ Tweet quote
The Script

Word for word.

Read-along

Don't just watch it. Burn it in.

See every word as it's spoken — crank it to 2× and still catch all of it. The same dual-channel trick behind Amazon's Kindle + Audible.

Forget about 11 Labs. This AI voice tool is just as good, if not better, and it's free and unlimited. You can create unlimited AI voice with it.
You can clone your voice and you can even add emotion to the voices. This is the tool right here. It is called Fish Audio.
And in this video, we're going to make this simple system using Cloud Code to use their S2 .1 Pro model for free and unlimited. For example, we can paste in here something like, don't touch my cake. And if at the beginning we choose the angry emotion, when we generate this, it should sound angry.
So let's give it a shot. Don't touch my cake. So we sounded angry in his voice because we added this angry emotion at the beginning.
We can also do nervous and scared. Are you sure we can go in there? Or we can do confident and proud, for example.
I just won first place. So you can choose from all sorts of different emotions and even describe what you want exactly for the voice to emulate. And we're also going to go over how to clone your voice.
So if I select my cloned voice right here and click generate, like and subscribe, there you go. So to connect Fish Audio to Claude to build that system, what we're going to need to do is sign in and create an account. So you can find a link to Fish Audio down in the description.
Once you are here in the top right, you're going to see sign in or create an account. And you're just going to want to go ahead and get that done. Once you're signed in, it should look something like this.
And now to connect fish audio to Claude, we're going to use their MCP. So essentially, once we go into the Claude desktop app, what we're going to do is in the top right, click here, click on file, click on settings. Then we can scroll down, go to connectors.
As you can see, I have fish audio here already, so I'm just going to remove it for installation purposes. What you're gonna want to do is go to add, click on add custom connector, and then you can paste the MCP server URL right here. You can find this in the description.
You're just gonna want to paste it right here. You can name this whatever you want. I'll just name it fish audio and click on continue.
And then add. So you should see a connect button on fish audio. You're going to want to click on connect.
It's going to bring you to your browser where we already signed in and we can just click on approve and then open Claude and we are good to go. Now for the MCP to take effect, we'll have to close Claude, close it for a few seconds and then reopen it. And now we are good to go to actually build the system.
You can find this. super simple prompt down in the description. This is just going to actually build the web app for us to use fish audio.
So once you've pasted it in, you can go ahead and click go. Now, Claude has built the system, but in order for it to actually access the API for the S 2 .1 pro model, what we're going to need to do is get the API key from fish audio. So we're going to go back to Google Chrome, where we are signed into fish audio in the bottom left.
We're going to click on developer. Then in the top right, we're going to click on this black button, create API key. Name it whatever you want.
And then click on create. Now this is going to give you your key. Go ahead and copy that.
Then we can go back into Claude. And you're going to want to look for your .env folder. So it's going to be in the folder that you selected for your project.
if you don't see this blue dot env button but chances are you will see this you can just click right here wherever it says dot env you can go ahead and delete this after the equal sign and paste it in right there and then click on save in the top right and you are good to go now what we have to do is we have to actually tell claude that we did that so we can say update it i added my api key and hit enter Now, remember, we're also going to clone our voice later in the video.
But for now, we can go ahead and actually test it out. Now, we have a link right here, which we can use to actually launch it in our browser. If you don't see this link, you can ask Claude to give you the link to actually test it out in your browser.
So I'm going to go ahead and click on that. And this is what it built for us. So it looks pretty similar.
We can go ahead and test this out. so it says i can't believe we actually won the championship we can choose excited and let's give that a test i can't believe we actually won the championship there you go so one thing i will change is as you can see this is a selector instead of actually adding it into the prompt and we want it in the prompt because if we add it in with the square brackets then we can actually type we can add multiple in at once and we can also type a more detailed description of what we want the voice to sound like.
So we're going to come back into Claude and yours may be working perfectly fine, but this is just an example of how we'll fix it to be how we need it. So we can say, make the emotion buttons, add the emotion to the prompt where it is selected. Enter.
What I'm going for here is for it to actually add when I click on say happy to actually add the happy into the prompt wherever is selected right here. So Claude went ahead and did that. And now we can go ahead and click here and add happy and excited into the same prompt and generate it.
I can't believe we actually won the championship. And there you go. So how do we clone our own voice or another voice and add it as an option?
Well, What you can do is go ahead and record your voice. It only has to be about 30 seconds.
So I've just dragged in a audio file of my voice. You can use the voice memo app on iPhone or whichever other way you want. And you can go ahead and just paste that straight into Claude and say, clone this voice and add it as an option.
Then Claude is going to go ahead and use fish audio to clone the voice and add it as an option for future generations So Claude has gone ahead and sent that off to fish audio to be cloned There was my other voice in there from earlier. So I just asked it to remove that they're both still my voice but now we can go back to Chrome and I'm just gonna refresh right and Now you can see here we have cloned voice so we can click on that now that's selected and And we can say something like, like and subscribe for more.
And if we test that out, like and subscribe for more. There you go. So what's the best way to actually find voices?
And what are some other ways we can control the voice? Well, what we can do is on fish audio, if we go to text to speech on the left over here, if we come up to the top, click on the voice that's selected up here in the top left and click on more voices. We can actually choose and test out some of these voices here and default voices.
And there's also the explore tab where you can find and search for any kind of voice for whatever you're trying to make. And these are all community made actually. So let's say you found when you liked, so we have Adrian right here and default voices inside of our system.
What we can do is we can search for Adrian, click on search. And you can see it's right here at the top with 2000 likes. So we can select that.
And if we test it out inside of fish audio, we can say something like hello. Hello. And then if we choose it again, so it's chosen here in our system, we can say hello.
Hello. And as you can see, it is the same voice. Another thing we can do is.
There's also more control we can have outside of just emotion. So if we choose right here, we have laughing. We could say, my name is Adrian, for example.
My name is Adrian. So as you can see, we actually have laughing. So things outside of just emotion in the voice.
And you can also find a few other examples of those here in the tags when you're in the text to speech section. There's other options in here as well for audio effects. That's going to do it for this video.
You can go ahead and try out fish audio for free with the link in the description. Be sure to subscribe for more and I'll see you in the next one. Peace.
The Hook

The bait, then the rug-pull.

The pitch is a direct swap: skip ElevenLabs and get free, unlimited AI voice generation with emotional control by wiring Fish Audio into Claude through an MCP connector.

Frameworks

Named ideas worth stealing.

00:26concept

Bracketed emotion-tag prompting

  1. [angry]
  2. [nervous][scared]
  3. [confident][proud]

Placing one or more bracketed emotion keywords at the start of a text-to-speech prompt changes the model's vocal delivery of the same underlying sentence.

Steal forany AI voiceover workflow needing tonal variety without swapping voices
CTA Breakdown

How they asked for the click.

VERBAL ASK
08:41link
You can go ahead and try out fish audio for free with the link in the description. Be sure to subscribe for more.

One clean CTA at the very end, paired with a subscribe ask. No hard sell mid-video beyond a joking aside.

MENTIONED ON CAMERA
FROM THE DESCRIPTION
PRIMARY CTAWhere the creator wants you to go next.
AFFILIATECommission earned if you click.
Storyboard

Visual structure at a glance.

open
hookopen00:00
emotion demo
promiseemotion demo00:23
MCP connector
valueMCP connector01:50
wiring API key
valuewiring API key03:39
voice cloning
valuevoice cloning05:27
outro CTA
ctaoutro CTA08:11
Frame Gallery

Visual moments.

One-click upgrade to your Google

Get more breakdowns in your search results

Add Modern Creator as a preferred source and Google shows you more of our breakdowns in Search, Top Stories, and AI Overviews. It only changes what you see, and you can undo it in your Google settings anytime.

Add to Preferred SourcesOpens your Google source preferences with us pre-loaded. Tick the box and you're done.
Watch next

More from this channel + related breakdowns.