Skip to main content
Glama

ElevenLabs MCP Server

AudioPlayer.svelte2.29 kB
<script lang="ts"> export let audioData: string; // base64 encoded audio export let name: string = 'audio'; let audio: HTMLAudioElement; let isPlaying = false; $: if (audioData) { const audioUrl = `data:audio/mpeg;base64,${audioData}`; if (audio) { audio.src = audioUrl; } } function togglePlay() { if (audio.paused) { audio.play(); } else { audio.pause(); } } function handlePlayStateChange() { isPlaying = !audio.paused; } function download() { const link = document.createElement('a'); link.href = `data:audio/mpeg;base64,${audioData}`; link.download = `${name}`; document.body.appendChild(link); link.click(); document.body.removeChild(link); } </script> <div class="audio-player"> <audio bind:this={audio} on:play={handlePlayStateChange} on:pause={handlePlayStateChange} on:ended={handlePlayStateChange} ></audio> <div class="controls"> <button class="play-button" on:click={togglePlay} disabled={!audioData} aria-label={isPlaying ? 'Pause' : 'Play'} > {#if isPlaying} ⏸️ {:else} ▶️ {/if} </button> <button class="download-button" on:click={download} disabled={!audioData} aria-label="Download" > 💾 </button> </div> </div> <style> .audio-player { display: flex; align-items: center; gap: 1rem; padding: 1rem; border: 1px solid #ccc; border-radius: 0.5rem; background: #f9f9f9; } .controls { display: flex; gap: 0.5rem; } button { padding: 0.5rem 1rem; border: none; border-radius: 0.25rem; background: #fff; cursor: pointer; transition: opacity 0.2s; } button:disabled { opacity: 0.5; cursor: not-allowed; } button:not(:disabled):hover { opacity: 0.8; } </style>

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mamertofabian/elevenlabs-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server