ihateaudio
by ihateaudio.com · remote · no sign-in to list tools · v0.3.0 · published by com.ihateaudio
49 audio tools: trim, convert, normalize, remove vocals, split stems, transcribe, and more.
48 tools: 1 can delete or cancel things, 3 do something that can't be undone and 44 change things.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone3Claude Code: ask: see these tools
- Changes things44Claude Code: ask: see these tools
- Only reads0Claude Code: allow
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http ihateaudio https://ihateaudio.com/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnvocal_remover
The server marks "vocal_remover" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The description's first verb is "remove": a word for removing or ending something.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
48 tools
Deletes or cancels 1Claude Code: deny
vocal_removerRemoves the vocals from a song by source separation and returns the instrumental.1 finding
Why it is in this group
- The description's first verb is "remove": a word for removing or ending something.
- The server marks it not destructive (destructiveHint: false), but an annotation never lowers a class.
Findings
- Warn
The server marks "vocal_remover" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The description's first verb is "remove": a word for removing or ending something.
Description, as the server wrote it Removes the vocals from a song by source separation and returns the instrumental. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
Can't be undone 3Claude Code: ask
send_audio_by_emailPrepares audio to fit common email attachment limits by recompressing it or splitting it.No findings
Why it is in this group
- The name "send_audio_by_email" says "send": a word for sending, and what is sent cannot be taken back.
Description, as the server wrote it Prepares audio to fit common email attachment limits by recompressing it or splitting it. It returns the files and does not send any email. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
send_audio_on_discordPrepares audio to fit Discord's upload limit by recompressing it or splitting it.No findings
Why it is in this group
- The name "send_audio_on_discord" says "send": a word for sending, and what is sent cannot be taken back.
Description, as the server wrote it Prepares audio to fit Discord's upload limit by recompressing it or splitting it. It returns the files and does not send anything to Discord. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
send_audio_on_whatsappPrepares audio to fit WhatsApp's 16 MB limit by recompressing it or splitting it at pauses.No findings
Why it is in this group
- The name "send_audio_on_whatsapp" says "send": a word for sending, and what is sent cannot be taken back.
Description, as the server wrote it Prepares audio to fit WhatsApp's 16 MB limit by recompressing it or splitting it at pauses. It returns the files and does not send anything to WhatsApp. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
Changes things 44Claude Code: ask
8d_audio_makerPans the audio in a circle around the listener (the "8D audio" effect).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Pans the audio in a circle around the listener (the "8D audio" effect). Input: one file with a public HTTPS download_url. Optional settings for set_8d_effect: secondsPerTurn, distance. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
acapella_extractorIsolates the vocals from a song by source separation and returns the vocal track.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Isolates the vocals from a song by source separation and returns the vocal track. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
android_ringtone_makerCuts a section of a song into an MP3 ringtone for Android.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Cuts a section of a song into an MP3 ringtone for Android. Input: one file with a public HTTPS download_url. Optional settings for set_ringtone: startSec, endSec, fadeOut, fadeSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_compressorMakes an audio file smaller by lowering its bitrate, sample rate or channel count.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Makes an audio file smaller by lowering its bitrate, sample rate or channel count. Input: one file with a public HTTPS download_url. Optional settings for set_compression: bitrateKbps, sampleRateHz, channels. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_converterConverts audio between MP3, WAV, M4A, OGG, FLAC and other formats.No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts audio between MP3, WAV, M4A, OGG, FLAC and other formats. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_joinerJoins several audio files into one, in the order given, with an optional gap.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Joins several audio files into one, in the order given, with an optional gap. Input: two or more files, in order, each with a public HTTPS download_url. Optional settings for set_join_gap: gapSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_looperRepeats a clip a set number of times, with an optional gap.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Repeats a clip a set number of times, with an optional gap. Input: one file with a public HTTPS download_url. Optional settings for set_loop: repeats, gapSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_normalizerNormalizes loudness to a LUFS target, such as -14 for Spotify or -16 for podcasts, with a true-peak ceiling.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Normalizes loudness to a LUFS target, such as -14 for Spotify or -16 for podcasts, with a true-peak ceiling. Input: one file with a public HTTPS download_url. Optional settings for set_loudness_target: platform, targetLufs, ceilingDbtp. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_reverserReverses audio so it plays from end to start.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Reverses audio so it plays from end to start. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_splitterSplits a recording into parts: a set number, a set length, or at silences.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Splits a recording into parts: a set number, a set length, or at silences. Input: one file with a public HTTPS download_url. Optional settings for set_split: method, parts, partLengthSec, silenceThresholdDbfs, minimumGapSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_transcriberTranscribes the speech in a recording to text with the Whisper speech recognition model.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Transcribes the speech in a recording to text with the Whisper speech recognition model. Input: one file with a public HTTPS download_url. Optional settings for set_transcript_layout: paragraphs. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
audio_trimmerCuts an audio file down to a start and end time, or removes that section.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Cuts an audio file down to a start and end time, or removes that section. Input: one file with a public HTTPS download_url. Optional settings for set_trim: startSec, endSec, mode, fade. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
bass_boosterBoosts the low frequencies.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Boosts the low frequencies. Input: one file with a public HTTPS download_url. Optional settings for set_bass_boost: amountDb, cornerHz, keepLevel. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
bpm_detectorMeasures the tempo of a track in BPM.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Measures the tempo of a track in BPM. Input: one file with a public HTTPS download_url. Optional settings for set_analysis_range: selectionOnly. Returns the measurements as JSON, not a file. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
crossfade_joinerJoins several files with a crossfade between each pair.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Joins several files with a crossfade between each pair. Input: two or more files, in order, each with a public HTTPS download_url. Optional settings for set_crossfade: fadeSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
dynamic_compressorApplies dynamic range compression to even out levels.No findings
Why it is in this group
- The description's first verb is "apply": a word for a change.
Description, as the server wrote it Applies dynamic range compression to even out levels. Input: one file with a public HTTPS download_url. Optional settings for set_compressor: preset, thresholdDb, ratio, attackMs, releaseMs, kneeDb, makeupDb. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
echo_adderAdds an echo or delay effect.No findings
Why it is in this group
- The description's first verb is "add": a word for a change.
Description, as the server wrote it Adds an echo or delay effect. Input: one file with a public HTTPS download_url. Optional settings for set_echo: preset, delayMs, feedbackPercent, mixPercent. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
equalizerApplies an equalizer preset.No findings
Why it is in this group
- The description's first verb is "apply": a word for a change.
Description, as the server wrote it Applies an equalizer preset. Input: one file with a public HTTPS download_url. Optional settings for set_equalizer: preset. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
fade_in_outAdds a fade-in at the start and a fade-out at the end.No findings
Why it is in this group
- The description's first verb is "add": a word for a change.
Description, as the server wrote it Adds a fade-in at the start and a fade-out at the end. Input: one file with a public HTTPS download_url. Optional settings for set_fade: fadeInSec, fadeOutSec, curve. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
flac_converterConverts audio to lossless FLAC.No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts audio to lossless FLAC. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
key_finderDetects the musical key of a track and its Camelot code.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Detects the musical key of a track and its Camelot code. Input: one file with a public HTTPS download_url. Returns the measurements as JSON, not a file. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
loudness_meterMeasures integrated loudness (LUFS), loudness range and true peak to ITU-R BS.1770.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Measures integrated loudness (LUFS), loudness range and true peak to ITU-R BS.1770. Input: one file with a public HTTPS download_url. Returns the measurements as JSON, not a file. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
m4a_converterConverts audio to M4A (AAC).No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts audio to M4A (AAC). Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
mp3_converterConverts an audio or video file to MP3.No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts an audio or video file to MP3. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
nightcore_makerSpeeds a track up and raises its pitch (the "nightcore" edit).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Speeds a track up and raises its pitch (the "nightcore" edit). Input: one file with a public HTTPS download_url. Optional settings for set_nightcore: rate, preset. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
noise_removerReduces background noise such as hiss, hum and room noise in a recording.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Reduces background noise such as hiss, hum and room noise in a recording. Input: one file with a public HTTPS download_url. Optional settings for set_noise_reduction: strength. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
ogg_converterConverts audio to OGG Vorbis.No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts audio to OGG Vorbis. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
pitch_shifterShifts pitch by semitones and cents without changing length.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Shifts pitch by semitones and cents without changing length. Input: one file with a public HTTPS download_url. Optional settings for set_pitch_shift: semitones, cents. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
reverb_adderAdds convolution reverb.No findings
Why it is in this group
- The description's first verb is "add": a word for a change.
Description, as the server wrote it Adds convolution reverb. Input: one file with a public HTTPS download_url. Optional settings for set_reverb: space, decaySec, mix, preDelayMs. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
ringtone_makerCuts a section of a song into an M4R ringtone for iPhone.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Cuts a section of a song into an M4R ringtone for iPhone. Input: one file with a public HTTPS download_url. Optional settings for set_ringtone: startSec, endSec, fadeOut, fadeSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
sample_rate_converterResamples audio to a different sample rate.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Resamples audio to a different sample rate. Input: one file with a public HTTPS download_url. Optional settings for set_sample_rate: sampleRateHz. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
silence_removerShortens long silences in speech recordings.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Shortens long silences in speech recordings. Input: one file with a public HTTPS download_url. Optional settings for set_silence_removal: threshold, minimumGapSec, paddingSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
slowed_reverbSlows a track down and adds reverb (the "slowed + reverb" edit).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Slows a track down and adds reverb (the "slowed + reverb" edit). Input: one file with a public HTTPS download_url. Optional settings for set_slowed_reverb: intensity, speed, mix, decaySec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
speed_changerChanges playback speed, with or without changing pitch.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Changes playback speed, with or without changing pitch. Input: one file with a public HTTPS download_url. Optional settings for set_speed: speed, keepPitch. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
stem_splitterSeparates a song into stems (vocals, drums, bass, other) by source separation.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Separates a song into stems (vocals, drums, bass, other) by source separation. Input: one file with a public HTTPS download_url. Optional settings for set_stems: vocals, drums, bass, other. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
stereo_to_monoConverts between stereo and mono, or keeps one channel.No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts between stereo and mono, or keeps one channel. Input: one file with a public HTTPS download_url. Optional settings for set_channel_mode: mode. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
stereo_widenerWidens or narrows the stereo image.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Widens or narrows the stereo image. Input: one file with a public HTTPS download_url. Optional settings for set_stereo_width: width. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
subtitle_generatorTranscribes speech and returns an SRT or VTT subtitle file.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Transcribes speech and returns an SRT or VTT subtitle file. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
tempo_changerChanges tempo without changing pitch.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Changes tempo without changing pitch. Input: one file with a public HTTPS download_url. Optional settings for set_tempo: tempoPercent, bpm. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
video_to_audioExtracts the audio track from a video file such as MP4, MOV or MKV.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Extracts the audio track from a video file such as MP4, MOV or MKV. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
voice_changerApplies a voice effect preset or a pitch shift to a recorded voice.No findings
Why it is in this group
- The description's first verb is "apply": a word for a change.
Description, as the server wrote it Applies a voice effect preset or a pitch shift to a recorded voice. Input: one file with a public HTTPS download_url. Optional settings for set_voice: preset, semitones. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
volume_boosterRaises the volume by a gain in dB or up to a target peak.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Raises the volume by a gain in dB or up to a target peak. Input: one file with a public HTTPS download_url. Optional settings for set_volume: method, gainDb, targetPeakDbfs. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
wav_converterConverts audio to WAV at 16, 24 or 32-bit.No findings
Why it is in this group
- The description's first verb is "convert": a word for a change.
Description, as the server wrote it Converts audio to WAV at 16, 24 or 32-bit. Input: one file with a public HTTPS download_url. Optional settings for set_wav_bit_depth: bitDepth. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
waveform_generatorDraws a PNG image of the waveform.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Draws a PNG image of the waveform. Input: one file with a public HTTPS download_url. Optional settings for set_waveform_image: preset, widthPx, heightPx, style, waveColor, backgroundColor, transparent. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 0.3.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http ihateaudio https://ihateaudio.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [],
"ask": [
"mcp__ihateaudio__audio_trimmer",
"mcp__ihateaudio__audio_joiner",
"mcp__ihateaudio__audio_splitter",
"mcp__ihateaudio__silence_remover",
"mcp__ihateaudio__fade_in_out",
"mcp__ihateaudio__audio_reverser",
"mcp__ihateaudio__audio_looper",
"mcp__ihateaudio__crossfade_joiner",
"mcp__ihateaudio__audio_converter",
"mcp__ihateaudio__mp3_converter",
"mcp__ihateaudio__wav_converter",
"mcp__ihateaudio__m4a_converter",
"mcp__ihateaudio__ogg_converter",
"mcp__ihateaudio__flac_converter",
"mcp__ihateaudio__video_to_audio",
"mcp__ihateaudio__audio_compressor",
"mcp__ihateaudio__sample_rate_converter",
"mcp__ihateaudio__send_audio_on_whatsapp",
"mcp__ihateaudio__send_audio_on_discord",
"mcp__ihateaudio__send_audio_by_email",
"mcp__ihateaudio__volume_booster",
"mcp__ihateaudio__audio_normalizer",
"mcp__ihateaudio__bass_booster",
"mcp__ihateaudio__dynamic_compressor",
"mcp__ihateaudio__stereo_to_mono",
"mcp__ihateaudio__speed_changer",
"mcp__ihateaudio__pitch_shifter",
"mcp__ihateaudio__tempo_changer",
"mcp__ihateaudio__slowed_reverb",
"mcp__ihateaudio__nightcore_maker",
"mcp__ihateaudio__voice_changer",
"mcp__ihateaudio__reverb_adder",
"mcp__ihateaudio__echo_adder",
"mcp__ihateaudio__8d_audio_maker",
"mcp__ihateaudio__equalizer",
"mcp__ihateaudio__stereo_widener",
"mcp__ihateaudio__ringtone_maker",
"mcp__ihateaudio__android_ringtone_maker",
"mcp__ihateaudio__bpm_detector",
"mcp__ihateaudio__key_finder",
"mcp__ihateaudio__loudness_meter",
"mcp__ihateaudio__waveform_generator",
"mcp__ihateaudio__acapella_extractor",
"mcp__ihateaudio__stem_splitter",
"mcp__ihateaudio__audio_transcriber",
"mcp__ihateaudio__subtitle_generator",
"mcp__ihateaudio__noise_remover"
],
"deny": [
"mcp__ihateaudio__vocal_remover"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as ihateaudio. Review it before you use it.