ElevenLabs vs Paxa Labs

A side-by-side look at the ElevenLabs and Paxa Labs MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

ElevenLabs logoElevenLabsText-to-Speech · Remote HTTP/SSEElevenLabs in natural language: generate speech in any language, create and manage voices, compose m56GoodAuth: not declaredPaxa Labs logoPaxa LabsText-to-Speech · Local subprocess (stdio)Thai and English speech AI: text to speech with local playback, translation to Thai, and OCR64GoodAuth: not declared

Verdict: choose ElevenLabs for text-to-speech work over a hosted endpoint; choose Paxa Labs for text-to-speech as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

ElevenLabs logoChoose ElevenLabs when

  • You need dedicated capabilities in the Text-to-Speech domain.
  • You prefer a remote HTTP/SSE transport.
  • You want tools like elevenlabs_get_speech_history, elevenlabs_get_speech_history_item_by_id, elevenlabs_delete_speech_history_item.
Explore ElevenLabs

Paxa Labs logoChoose Paxa Labs when

  • You need dedicated capabilities in the Text-to-Speech domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: PAXA_API_KEY.
  • You want tools like speak, queue_speech, control_playback.
Explore Paxa Labs

Feature & specification comparison

Rows where the two servers differ are marked.

SpecElevenLabs logoElevenLabsPaxa Labs logoPaxa Labs
CategoryText-to-SpeechText-to-Speech
Quality signal56/100 · Good64/100 · Good
Install commandConfirmedConfirmed
TransportRemote HTTP/SSELocal subprocess (stdio)
AuthNot declaredNot declared
PricingNot declaredNot declared
Required env varsNone listedPAXA_API_KEY
Verified ownerCommunity listingCommunity listing
GitHub stars010
Directory activity 2 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools15514

Tools & capabilities

ElevenLabs tools 155

  • elevenlabs_get_speech_historyList Generated Items. Returns a list of your generated audio (e.g. text to speech, speech to speech, Studio, dubbing). Music and SFX generations are not included and cannot currently be retrieved via the API. Bulk support: accepts start_after_history_item_ids, voice_ids, model_ids for batched execution.
  • elevenlabs_get_speech_history_item_by_idGet History Item. Retrieves a history item. Bulk support: accepts history_item_ids for batched execution.
  • elevenlabs_delete_speech_history_itemDelete History Item. Delete a history item by its ID Bulk support: accepts history_item_ids for batched execution.
  • elevenlabs_get_audio_full_from_speech_history_itemGet Audio From History Item. Returns the audio of an history item. Bulk support: accepts history_item_ids for batched execution.
  • elevenlabs_download_speech_history_itemsDownload History Items. Download one or more history items. If one history item ID is provided, we will return a single audio file. If more than one history item IDs are provided, we will provide the history items packed into a .zip file.
  • elevenlabs_sound_generationSound Generation. Turn text into sound effects for your videos, voice-overs or video games using the most advanced sound effects models in the world. Bulk support: accepts model_ids for batched execution.
  • elevenlabs_get_audio_isolation_historyGet Audio Isolation History. Returns a list of all your audio isolation generations.
  • elevenlabs_delete_audio_isolation_history_itemDelete Audio Isolation History Item. Deletes a specific audio isolation history item and the associated media files. Bulk support: accepts history_item_ids for batched execution.
  • elevenlabs_delete_sampleDelete Sample. Removes a sample by its ID. Bulk support: accepts voice_ids, sample_ids for batched execution.
  • elevenlabs_get_audio_from_sampleGet Audio From Sample. Returns the audio corresponding to a sample attached to a voice. Bulk support: accepts voice_ids, sample_ids for batched execution.
  • elevenlabs_text_to_speech_fullText To Speech. Converts text into speech using a voice of your choice and returns audio.
  • elevenlabs_text_to_dialogueText To Dialogue (Multi-Voice). Converts a list of text and voice ID pairs into speech (dialogue) and returns audio. Bulk support: accepts model_ids for batched execution.
  • +143 more on the listing page

Paxa Labs tools 14

  • speakSynthesize a short line with Paxa TTS and play it through this machine's speakers. Blocks until playback finishes. Waits for the currently playing audio but jumps ahead of queued long-form segments. For long content use queue_speech. Costs 10 credits per 1000 characters. Direction tags (paxa-tts-flash-v2, every voice): words in square brackets written into the text set the delivery from that point on, in English, Thai, or Chinese, e.g. [whispering], [speaking slowly, close to the microphone], [sad:0.5], or a blend [happy:0.7+sad:0.3]; [neutral] returns to the voice's own delivery. Sounds such as [laughs], [sighs], [gasps] play where written; [um] and [hmm] are spoken; <emph>...</emph> and <whisper>...</whisper> mark a span. Nothing in brackets is spoken, tag characters bill as text, and a tag the model cannot do is refused before any charge. On paxa-tts-flash-v1 only khanomchan and kaprao read tags, from a fixed emotion list.
  • queue_speechRead long content aloud (stories, articles, books). Splits the text into segments, synthesizes ahead while playing, and returns immediately; segments play in order after anything already queued. Monitor and control with the control_playback tool. Costs 10 credits per 1000 characters. Direction tags (paxa-tts-flash-v2, every voice): words in square brackets written into the text set the delivery from that point on, in English, Thai, or Chinese, e.g. [whispering], [speaking slowly, close to the microphone], [sad:0.5], or a blend [happy:0.7+sad:0.3]; [neutral] returns to the voice's own delivery. Sounds such as [laughs], [sighs], [gasps] play where written; [um] and [hmm] are spoken; <emph>...</emph> and <whisper>...</whisper> mark a span. Nothing in brackets is spoken, tag characters bill as text, and a tag the model cannot do is refused before any charge. On paxa-tts-flash-v1 only khanomchan and kaprao read tags, from a fixed emotion list.
  • control_playbackInspect and control the shared audio queue. status reports what is playing, what is queued, and any synthesis failures. pause and resume halt and continue playback (not supported on Windows). skip drops the current segment. clear stops playback and empties the queue.
  • play_audioPlay a local audio file through this machine's speakers, for example a file produced earlier by text_to_speech. Blocks until playback finishes. Free (no API call).
  • text_to_speechSynthesize speech with Paxa TTS and save it as an audio file without playing it: voiceovers, narration, audiobooks. Text beyond 5000 characters is split at paragraphs and sentences and the parts are joined into one file (needs ffmpeg). With subtitles set, an srt or vtt caption file that matches the voice word for word is written next to the audio. Costs 10 credits per 1000 characters, 12.5 with subtitles. Direction tags (paxa-tts-flash-v2, every voice): words in square brackets written into the text set the delivery from that point on, in English, Thai, or Chinese, e.g. [whispering], [speaking slowly, close to the microphone], [sad:0.5], or a blend [happy:0.7+sad:0.3]; [neutral] returns to the voice's own delivery. Sounds such as [laughs], [sighs], [gasps] play where written; [um] and [hmm] are spoken; <emph>...</emph> and <whisper>...</whisper> mark a span. Nothing in brackets is spoken, tag characters bill as text, and a tag the model cannot do is refused before any charge. On paxa-tts-flash-v1 only khanomchan and kaprao read tags, from a fixed emotion list.
  • translate_to_thaiTranslate text from any language into Thai with Paxa Translate. Accepts a single string or up to 200 segments that share context. Costs 25 credits per 1000 text characters (minimum 2 credits); context and glossary characters bill at 8 per 1000.
  • ocr_documentRun Paxa OCR on a local PDF, PNG, JPEG, or WebP file and return its content as GitHub-flavored Markdown (or structured blocks). Up to 50 pages and 10 MiB per file. Costs 6.5 credits per page.
  • extract_fieldsExtract typed fields from a local PDF, PNG, JPEG, or WebP document (up to 20 pages and 10 MiB) with Paxa Document Extraction. You write a schema of fields; every value returned is text printed in the document, read as the field's type, or null with the reason. Nothing is inferred or looked up. Built for Thai documents (receipts, tax invoices, forms, IDs) and fine on English ones. Costs 13 credits per page for a schema of up to 50 leaf fields and 19.5 per page for 51 to 100; the page reading and the evidence spans cost nothing extra. A schema the API refuses costs nothing and names the field and reason. The schema parameter summarizes the dialect; https://paxalabs.com/docs/extraction has every type and key.
  • transcribe_audioTranscribe a local recording or video of speech, Thai or any other language, code-switching included (mp3, wav, flac, ogg, m4a, aac, webm; or mp4, mov, mkv, avi and other video files, whose sound track is extracted locally with ffmpeg; up to 60 minutes and 25 MiB) with Paxa STT. The transcript comes back inline, so nothing needs to be read from disk afterwards; optionally it is also saved as txt, json (with word timings and segments), srt, or vtt, named after the recording. Existing files are never overwritten. Detects the language, handles code-switching, and can label speakers. Terms configured in PAXA_VOCABULARY or PAXA_VOCABULARY_FILE are pinned on every call. Costs 8.33 credits per minute of audio (0.1 minimum); subtitles and word timings cost nothing extra. Long recordings take minutes to process.
  • listenRecord one spoken turn from this machine's microphone and return its transcript (Thai, English, or other languages, code-switching included). Paxa's realtime transcription detects when the user starts and stops talking, so the call returns as soon as the turn ends; the audio goes straight to the API and nothing is written to disk. Waits for any speech this server is playing to finish first. Use it after speak when you asked the user a question and want their spoken answer. Returns an empty transcript when nobody spoke within wait_seconds. Costs 12.5 credits per minute of audio sent, silence included (a few seconds of listening costs well under one credit). Needs a microphone recorder on this machine (ffmpeg or sox; parecord or arecord on Linux) and Node 22 or newer; the host app must have microphone permission.
  • send_feedbackReport a wrong or poor output, an API problem, or a platform issue to the Paxa Labs team, tied to the request ids the other tools print ("Request id: ..."). A rating alone on at least one request id is a complete report. For a wrong output, add an example with the exact input, the output received, and the output expected. Free, no credits. Use it when the user says an output was wrong, or asks to report a problem; do not file reports the user did not ask for.
  • list_voicesList the Paxa TTS voice roster: ids, names, gender, language, and character notes. Free.
  • +2 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

ElevenLabs

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "elevenlabs": {
      "url": "https://api.mcp.ai/p_elevenlabs"
    }
  }
}

Paxa Labs

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "paxa-labs": {
      "command": "npx",
      "args": [
        "-y",
        "@paxalabs/mcp"
      ],
      "env": {
        "PAXA_API_KEY": "YOUR_PAXA_API_KEY_HERE"
      }
    }
  }
}

Frequently asked questions

ElevenLabs is categorized under Text-to-Speech and uses a remote HTTP/SSE transport. Paxa Labs belongs to Text-to-Speech and uses a local stdio subprocess. Pick ElevenLabs for text-to-speech work and Paxa Labs for text-to-speech.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

ElevenLabs has no declared pricing — check the project's own site. Paxa Labs has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add elevenlabs and paxa-labs as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, ElevenLabs has a quality signal of 56/100 (Good) with 2 views, 0 installs and 0 GitHub stars. Paxa Labs has 64/100 (Good) with 1 views, 0 installs and 10 GitHub stars.