Advanced TTS MCP Server

Um servidor de Texto-para-Fala (TTS) de alta qualidade e rico em recursos para gerar fala natural e expressiva com controles avançados.

Documentação

Advanced TTS MCP Server

Um servidor MCP de Texto-para-Fala de alta qualidade e rico em recursos, com implementação nativa em TypeScript. Projetado para aplicações profissionais que exigem síntese de fala natural e expressiva, com controles avançados e zero dependências externas.

✨ Recursos

🎯 Controle Avançado de Voz

  • 10 Vozes de Alta Qualidade - Vozes masculinas e femininas com personalidades distintas
  • Controle de Emoção - Neutro, feliz, animado, calmo, sério, casual, confiante
  • Ritmo Dinâmico - Modos natural, conversacional, apresentação, tutorial, narrativo
  • Velocidade e Volume - Controle preciso de 0,25x a 3,0x na velocidade, 0,1x a 2,0x no volume

🚀 Capacidades Profissionais

  • Áudio em Streaming - Síntese e reprodução em tempo real
  • Processamento em Lote - Lida com múltiplos segmentos de texto de forma eficiente
  • Múltiplos Formatos - Suporte a saída WAV, MP3, FLAC, OGG
  • Aprimoramento Natural de Fala - Inserção automática de pausas e marcadores de emoção
  • Gerenciamento de Fila - Lida com múltiplas solicitações concorrentes

🔧 Integração MCP

  • 6 Ferramentas Poderosas - Síntese completa, processamento em lote, gerenciamento de voz
  • 2 Recursos Ricos - Capacidades de voz e exemplos de uso
  • Status em Tempo Real - Acompanhe o progresso do processamento e gerencie solicitações
  • Gerenciamento de Arquivos - Salve, liste e organize saídas de áudio

🚀 Início Rápido

Opção 1: Implantar no Smithery.ai (Recomendado)

🎯 Implantação com Um Clique na Plataforma Smithery

  1. Implantar Agora: Visite Smithery.ai e importe este repositório
  2. Configurar: Defina suas preferências de voz e fala
  3. Usar Imediatamente: Acesse via Claude Desktop ou qualquer cliente compatível com MCP

Benefícios:

  • ✅ Nenhuma configuração necessária
  • ✅ Escalonamento e atualizações automáticas
  • ✅ Nenhum download de modelo necessário
  • ✅ Hospedagem de nível empresarial

📋 Guia Completo de Implantação no Smithery →

Opção 2: Instalação Local

Pré-requisitos:

  • Node.js 18+

Instalação:

  1. Clone o repositório
git clone https://github.com/samihalawa/advanced-tts-mcp.git
cd advanced-tts-mcp
  1. Instale as dependências
npm install
  1. Configure o Claude Desktop

Adicione ao seu claude_desktop_config.json:

{
  "mcpServers": {
    "advanced-tts": {
      "command": "node",
      "args": ["dist/index.js"],
      "cwd": "/path/to/advanced-tts-mcp"
    }
  }
}
  1. Comece a usar!
# Build TypeScript
npm run build

# Start server
npm start

Reinicie o Claude Desktop e comece a sintetizar com vozes naturais e expressivas.

🎙️ Vozes Disponíveis

ID da VozNomeGêneroDescrição
af_heartHeartFemininoVoz calorosa e amigável (padrão)
af_skySkyFemininoVoz clara e brilhante
af_bellaBellaFemininoVoz elegante e sofisticada
af_sarahSarahFemininoVoz profissional e confiante
af_nicoleNicoleFemininoVoz gentil e suave
am_adamAdamMasculinoVoz forte e autoritária
am_michaelMichaelMasculinoVoz amigável e acessível
bf_emmaEmmaFemininoVoz jovem e energética
bf_isabellaIsabellaFemininoVoz madura e expressiva
bm_lewisLewisMasculinoVoz profunda e ressonante

📚 Exemplos de Uso

Síntese Básica

# Simple text-to-speech
await synthesize_speech(
    text="Hello! Welcome to Advanced TTS.",
    voice_id="af_heart"
)

Expressão Emocional

# Excited announcement
await synthesize_speech(
    text="This is amazing news! You're going to love this new feature!",
    voice_id="af_heart",
    emotion="excited",
    pacing="conversational",
    speed=1.1
)

Apresentação Profissional

# Tutorial narration
await synthesize_speech(
    text="Step one: Open your browser. Step two: Navigate to the website.",
    voice_id="am_adam", 
    emotion="calm",
    pacing="tutorial",
    speed=0.9
)

Processamento em Lote

# Multiple segments with pauses
await batch_synthesize(
    segments=[
        "Welcome to our presentation.",
        "Today we'll cover three main topics.", 
        "Let's begin with the first topic."
    ],
    voice_id="af_sarah",
    emotion="confident",
    pacing="presentation",
    merge_output=True,
    segment_pause=1.0,
    save_file=True
)

🛠️ Ferramentas Disponíveis

synthesize_speech

Converta texto em fala natural com controle total sobre as características da voz.

Parâmetros:

  • text - Texto a ser sintetizado (máx. 10.000 caracteres)
  • voice_id - Seleção de voz (veja a tabela acima)
  • speed - Taxa de fala (0,25-3,0)
  • emotion - Emoção da voz (neutro, feliz, animado, calmo, sério, casual, confiante)
  • pacing - Estilo de fala (natural, conversacional, apresentação, tutorial, narrativo, rápido, lento)
  • volume - Volume do áudio (0,1-2,0)
  • output_format - Formato do arquivo (wav, mp3, flac, ogg)
  • save_file - Salvar em arquivo (booleano)
  • filename - Nome de arquivo personalizado

batch_synthesize

Processe múltiplos segmentos de texto de forma eficiente, com opção de mesclagem.

Parâmetros:

  • segments - Lista de segmentos de texto
  • merge_output - Combinar em um único arquivo
  • segment_pause - Pausa entre segmentos (0,0-5,0s)
  • Todos os parâmetros de síntese acima

get_voices

Recupere informações completas sobre as vozes e suas capacidades.

get_status

Verifique o status do processamento de solicitações de síntese.

cancel_request

Cancele operações de síntese ativas.

list_output_files

Navegue pelos arquivos de áudio salvos com metadados.

🎛️ Controles de Voz

Emoções

  • Neutro - Tom padrão e profissional
  • Feliz - Expressão animada e alegre
  • Animado - Entrega entusiástica e energética
  • Calmo - Tom relaxado e suave
  • Sério - Entrega formal e autoritária
  • Casual - Estilo relaxado e conversacional
  • Confiante - Tom seguro e profissional

Estilos de Ritmo

  • Natural - Ritmo equilibrado, semelhante ao humano
  • Conversacional - Ritmo de discussão casual
  • Apresentação - Ritmo de fala profissional
  • Tutorial - Entrega educacional e clara
  • Narrativo - Ritmo de contação de histórias
  • Rápido - Entrega rápida (1,2x velocidade base)
  • Lento - Entrega deliberada (0,8x velocidade base)

🎵 Formatos de Áudio

FormatoQualidadeCaso de Uso
WAVNão comprimidoMaior qualidade, edição
MP3ComprimidoWeb, streaming, compartilhamento
FLACSem perdasArquivamento, armazenamento de alta qualidade
OGGComprimidoAlternativa de código aberto

🔧 Configuração

Variáveis de Ambiente

# Model paths (optional)
KOKORO_MODEL_PATH=./kokoro-v1.0.onnx
KOKORO_VOICES_PATH=./voices-v1.0.bin

# Output settings
TTS_OUTPUT_DIR=./audio_output
TTS_MAX_QUEUE_SIZE=100

# Audio settings  
TTS_DEFAULT_VOICE=af_heart
TTS_ENABLE_STREAMING=true

Configuração do Servidor

config = ServerConfig(
    model_path="./kokoro-v1.0.onnx",
    voices_path="./voices-v1.0.bin", 
    output_dir="./audio_output",
    max_queue_size=100,
    enable_streaming=True,
    default_voice="af_heart"
)

🏗️ Arquitetura

├── src/advanced_tts/
│   ├── __init__.py          # Package initialization
│   ├── server.py            # MCP server implementation  
│   ├── engine.py            # Kokoro TTS engine wrapper
│   ├── models.py            # Data models and validation
│   └── utils.py             # Utility functions
├── pyproject.toml           # Project configuration
├── README.md               # Documentation
└── LICENSE                 # MIT License

🤝 Contribuindo

Contribuições são bem-vindas! Áreas para melhoria:

  • Modelos de voz adicionais
  • Síntese em streaming em tempo real
  • Efeitos de áudio avançados
  • Suporte a múltiplos idiomas
  • Otimizações de desempenho

📄 Licença

Licença MIT - veja LICENSE para detalhes.

🙏 Agradecimentos

  • Kokoro TTS - Síntese neural de voz de alta qualidade
  • Protocolo MCP - Integração perfeita com modelos de IA
  • FastMCP - Estrutura de servidor eficiente

Desenvolvido por Sami Halawa

Transforme seu texto em fala natural e expressiva com o Advanced TTS MCP Server.