AudacityMCP

Servidor MCP para Audacity 3.x com 131 ferramentas — efeitos, limpeza, masterização, conversão de formato, transcrição.

Documentação

AudacityMCP

Edição de áudio com IA no Audacity através do Model Context Protocol

CI Python 3.10+ License Release MCP Compatible Discord Sponsor

Início Rápido • Por que AudacityMCP? • Pipelines • Referência de Ferramentas • Solução de Problemas


O AudacityMCP conecta qualquer assistente de IA compatível com MCP ao Audacity, dando a ele controle total sobre a edição de áudio por meio de 144 ferramentas que abrangem efeitos, limpeza, masterização, transcrição e muito mais. Converse com seu assistente de IA e ele edita seu áudio em tempo real.

Sem nuvem. Sem chaves de API para processamento de áudio. Tudo roda localmente através da interface de pipe nomeado do Audacity.

Se isso for útil para você, uma estrela ajuda outras pessoas a encontrar o projeto — esse é todo o orçamento de marketing deste projeto. Quer ajudar a mantê-lo? Clique no selo Sponsor no topo.

Demonstração

Watch the demo

Compatibilidade: O AudacityMCP funciona com Audacity 3.x. O Audacity 4 removeu o mod-script-pipe — a interface de script que este servidor utiliza — e não oferece substituto, então o AudacityMCP não consegue controlar o Audacity 4.

Usando o Audacity 4? Existe um projeto complementar: Audacity4-MCP — 159 ferramentas sobre uma ponte TCP JSON-RPC, cobrindo edição, seleção, rótulos, efeitos destrutivos e em tempo real, e controle de parâmetros VST3 ao vivo.

Está em alfa inicial, e vale ser claro sobre a configuração: como o Audacity 4 ainda não tem interface de controle remoto, ele precisa de um fork complementar do Audacity 4 compilado a partir do código-fonte (Visual Studio, Qt 6.10, CMake, Ninja). Isso o coloca em território de desenvolvedor por enquanto, em vez de uso geral. Os mantenedores do Audacity confirmaram que uma interface oficial de comando e MCP está planejada assim que a migração interna for concluída; quando isso acontecer, o fork não deve ser mais necessário.

Funciona Com

O AudacityMCP funciona com qualquer cliente de IA que suporte o Model Context Protocol:


Início Rápido

1. Obtenha o AudacityMCP

Opção A: Clique no botão verde Code acima → Download ZIP → extraia para uma pasta

Opção B: Clone com git:

git clone https://github.com/xDarkzx/Audacity-MCP.git

2. Execute o instalador (configura todo o resto automaticamente)

Windows: clique duas vezes em install.bat no Explorador de Arquivos, ou — se você já estiver em um terminal da etapa git clone acima — continue na mesma janela do PowerShell/Command Prompt:

cd Audacity-MCP
.\install.bat

macOS / Linux:

cd Audacity-MCP
bash install.sh

O instalador faz 3 coisas: instala o audacity-mcp desta pasta local (a que você acabou de baixar/clonar — sem busca no PyPI ou GitHub), habilita o mod-script-pipe no Audacity, e configura o Claude Desktop — sem necessidade de edição manual de JSON. Ele pede confirmação antes de tocar em qualquer arquivo de configuração, explica exatamente o que vai fazer primeiro, e sempre faz backup de um arquivo existente antes de alterá-lo. Quer ver tudo o que ele faria sem mudar nada? Adicione --dry-run: .\install.bat --dry-run / bash install.sh --dry-run.

Nota: install.bat/install.sh devem ser executados de dentro desta pasta — eles só instalam o código que está ao lado deles, não baixam nada por conta própria.

Outros clientes MCP (Cursor, Claude Code, etc.)

Se você não estiver usando o Claude Desktop, instale manualmente com pip install audacity-mcp-server e adicione à configuração MCP do seu cliente:

{
  "mcpServers": {
    "audacity": {
      "command": "audacity-mcp"
    }
  }
}

Consulte a documentação MCP do seu cliente para saber a localização do arquivo de configuração.

Cliente não consegue encontrar/executar audacity-mcp? Aplicativos GUI nem sempre veem o mesmo PATH que um terminal vê. Execute python -c "import sysconfig; print(sysconfig.get_path('scripts'))" e use o caminho completo que ele imprimir (mais \audacity-mcp.exe no Windows ou /audacity-mcp no macOS/Linux) como "command" em vez do nome simples.

Prefere não executar nenhum script? Configuração manual completa

Sem install.bat/install.sh, nada tocando seu sistema automaticamente — três etapas, todas feitas à mão:

  1. Habilite o mod-script-pipe no Audacity: Editar → Preferências (Windows/Linux) ou Audacity → Preferências (macOS) → Módulos → defina mod-script-pipe como Ativado → OK → reinicie o Audacity.

  2. Instale o pacote: abra um terminal (Command Prompt/PowerShell no Windows, Terminal no macOS/Linux) e execute pip install audacity-mcp-server — uma instalação normal via PyPI, sem necessidade de clonar repositório.

  3. Configure o Claude Desktop: abra o Claude Desktop → Configurações (ícone de engrenagem) → aba Desenvolvedor → Editar Configuração — isso abre o claude_desktop_config.json em um editor de texto. Adicione isto dentro do bloco "mcpServers", mantendo quaisquer outros servidores que você já tenha:

    {
      "mcpServers": {
        "audacity": {
          "command": "audacity-mcp"
        }
      }
    }
    

    Salve o arquivo e reinicie completamente o Claude Desktop (saia pela bandeja do sistema, não apenas feche a janela).

Essa é a instalação completa — veja o Guia de Instalação para os mesmos passos com mais detalhes e notas por sistema operacional.

"audacity" não aparece como ferramenta após reiniciar? O "command": "audacity-mcp" acima só funciona se esse comando estiver no mesmo PATH que o Claude Desktop usa, o que nem sempre é o caso (especialmente se o Claude Desktop já estava aberto quando você instalou o Python). Se não conectar, execute isto em um terminal para encontrar o local real da instalação: python -c "import sysconfig; print(sysconfig.get_path('scripts'))" — então substitua "audacity-mcp" acima pelo caminho completo que ele imprimir mais \audacity-mcp.exe (Windows, lembre-se de dobrar cada barra invertida: \\) ou /audacity-mcp (macOS/Linux).

3. Comece a editar

Abra o Audacity, carregue algum áudio e converse com sua IA:

"Clean up this podcast recording"
"Master this track for Spotify, it's EDM"
"Transcribe this and add labels at each sentence"
"Add reverb with a large room, then export as FLAC"

O Audacity deve estar aberto primeiro. O AudacityMCP se comunica através do pipe nomeado do Audacity — ele não pode iniciar o Audacity por você.

Veja o Guia de Instalação completo para configuração detalhada em todas as plataformas e clientes MCP.


Por que AudacityMCP?

Sem AudacityMCP: Você navega manualmente pelos menus, ajusta parâmetros de efeitos de ouvido, aplica efeitos um de cada vez, consulta especificações ACX e repete até soar bem.

Com AudacityMCP: Você descreve o que quer em inglês simples e a IA cuida do resto — escolhendo os efeitos certos, definindo parâmetros padrão da indústria e encadeando operações.

Audacity ManualCom AudacityMCP
Limpeza de podcast5+ etapas em menus diferentes, adivinhando configurações de compressor"Limpe este podcast" — uma frase
Masterização de músicaPesquisar EQ/compressão adequados ao gênero, aplicar cada um manualmente"Masterize isto para o Spotify, é hip-hop" — predefinições ajustadas por gênero
Remoção de ruídoEfeito → Redução de Ruído → Obter Perfil → selecionar tudo → aplicar"Remova o ruído de fundo" — perfil automático
Operações em loteNavegação repetitiva em menus para cada operaçãoDescreva a cadeia completa e veja acontecer
TranscriçãoExportar áudio, usar ferramenta externa, importar resultados de volta"Transcreva isto e adicione rótulos" — permanece no Audacity
Curva de aprendizadoSaber quais efeitos existem e quais parâmetros usarApenas descreva o resultado que você quer

O AudacityMCP é especialmente útil para:

  • Podcasters que querem som consistente e profissional sem conhecimento de engenharia de áudio
  • Músicos que precisam de masterização rápida com configurações adequadas ao gênero
  • Criadores de conteúdo que trabalham com entrevistas, narrações ou gravações de campo
  • Qualquer pessoa que prefira descrever o que quer em vez de clicar em menus

O Que Ele Pode Fazer?

You:  "Clean up this podcast recording"
AI:   Runs auto_cleanup_podcast → HPF 80Hz → noise reduction → compression → safe loudness check

You:  "Master this track for Spotify, it's EDM"
AI:   Runs auto_master_music style=edm → HPF 30Hz → click removal → compression 2.5:1 → bass +2dB → loudness check

You:  "This is a noisy live recording, fix it up"
AI:   Runs auto_cleanup_live → HPF 100Hz → click removal → noise reduction 18dB → compression 5:1

You:  "Transcribe this interview and add labels"
AI:   Runs transcribe_to_labels → faster-whisper transcription → Audacity labels at each timestamp

You:  "Add reverb to the vocals, then export as FLAC"
AI:   select region → reverb effect → export to FLAC

Recursos

144 Ferramentas em 11 Categorias

CategoriaFerramentasDestaques
Efeitos30Reverb, eco, mudança de tom, mudança de tempo, EQ, phaser, distorção, paulstretch, HPF/LPF, graves e agudos, tremolo, wahwah
Limpeza e Masterização18Redução de ruído, compressor, limitador, 9 pipelines de um clique, ferramenta de análise
Edição13Cortar, copiar, colar, dividir, unir, aparar, silenciar, duplicar, desfazer, refazer
Projeto12Novo, abrir, salvar, importar/exportar (WAV, MP3, FLAC, OGG, AIFF)
Faixa15Adicionar mono/estéreo, remover, definir propriedades, mixar e renderizar, mudo/solo, pan, volume
Seleção12Selecionar tudo/nada/região/faixas, cruzamento de zero, posicionamento do cursor
Transporte7Reproduzir, parar, pausar, gravar, reproduzir região, obter posição
Análise6Contraste, detecção de clipping, espectro, localizador de batidas, rotulagem de som
Geração5Tom, ruído, chirp, DTMF, faixa de ritmo
Transcrição (Experimental)7Transcrição completa/da seleção, para rótulos, para SRT/VTT/TXT, pré-carregamento de modelo
Rótulos19Listar/encontrar/editar/excluir, excluir áudio de uma gravação rotulada por índice, adicionar em lote, cortar/excluir/silenciar regiões rotuladas, exportação de marcadores (simples/cue/Podlove), exportação de áudio por segmento, importar/exportar

Pipelines

O AudacityMCP inclui 9 pipelines de um clique para tarefas comuns de áudio. Cada pipeline é projetado para ser seguro para áudio mal gravado — ele nunca aumentará seu áudio de forma perigosa. Os pipelines limpam e melhoram seu áudio, e então você pode ajustar manualmente o volume depois, se necessário.

Como os Pipelines Funcionam

  1. Você diz à IA o que quer (ex.: "limpe este podcast")
  2. A IA escolhe o pipeline certo e o inicia
  3. O pipeline roda em segundo plano — você recebe um job_id de volta
  4. Consulte com check_pipeline_status a cada 15-30 segundos para monitorar o progresso
  5. Quando terminar, um popup aparece no Audacity

Regra de segurança: Os pipelines apenas reduzem picos se estiverem muito altos. Eles nunca aumentam o volume. Se você quiser atingir um alvo específico de LUFS (ex.: -14 para o Spotify), peça à IA para executar loudness_normalize depois de verificar se os resultados estão bons.

Referência de Pipelines

auto_analyze_audio — Analisar antes de processar

Mede seu áudio e recomenda o melhor pipeline. Execute isto primeiro se não tiver certeza do que fazer.

You: "Analyze this audio"
→ Returns: peak level, noise floor, clipping status, recommended pipeline

auto_cleanup_audio — Limpeza segura apenas

Limpa ruídos e artefatos sem alterar o volume de forma alguma. Use quando os níveis já estiverem bons.

You: "Just clean up the noise, don't change the volume"
→ DC offset removal → HPF 80Hz → noise reduction → click removal (optional)

auto_cleanup_podcast — Podcast / narração

Processamento profissional de transmissão para fala.

You: "Clean up this podcast recording"
→ DC offset → HPF 80Hz → noise reduction 12dB → compression 3:1 → safe loudness check

auto_audiobook_mastering — Audiolivro (ACX/Audible)

Atende aos requisitos ACX para distribuição de audiolivros.

You: "Master this for ACX / Audible"
→ DC offset → HPF 80Hz → noise reduction 12dB → compression 2.5:1 → safe loudness check → peak cap -3dB

auto_cleanup_interview — Entrevista / diálogo

Toque leve para conversas — preserva a dinâmica natural.

You: "Clean up this interview recording"
→ DC offset → HPF 80Hz → noise reduction 8dB → compression 2.5:1 → safe loudness check

auto_cleanup_vocal — Canto / vocal de estúdio

Ajustado para gravações vocais com EQ de presença para clareza.

You: "Process this vocal recording"
→ DC offset → HPF 100Hz → noise reduction 10dB → compression 3:1 → presence EQ (+3dB treble, -1dB bass) → safe loudness check

auto_cleanup_live — Gravação ao vivo / campo / com ruído

Limpeza agressiva para ambientes ruidosos. Os primeiros 0,5s devem ser ruído ambiente para a criação de perfil.

You: "This is a noisy live recording, clean it up"
→ DC offset → HPF 100Hz → click removal → noise reduction 18dB → compression 5:1 → safe loudness check

auto_master_music — Masterização de música

Masterização ajustada por gênero com 6 predefinições: edm, hiphop, rock, pop, classical, acoustic.

You: "Master this hip-hop track"
→ HPF 30Hz → click removal → compression 2:1 → bass +3dB treble +1dB → safe loudness check

You: "Master this for a classical album"
→ HPF 30Hz → click removal → compression 1.3:1 (very gentle) → no EQ → safe loudness check
PredefiniçãoHPFCompressãoEQ de GravesEQ de Agudos
EDM30 Hz2.5:1 / 80ms+2 dB+1 dB
Hip-Hop30 Hz2:1 / 100ms+3 dB+1 dB
Rock40 Hz2:1 / 100ms0 dB+1 dB
Pop35 Hz2:1 / 80ms+1 dB+1.5 dB
Clássico30 Hz1.3:1 / 200ms0 dB0 dB
Acústico30 Hz1.5:1 / 150ms0 dB0 dB

auto_lofi_effect — Lo-fi / vintage criativo

Aplique um som lo-fi quente e vintage. Predefinições: light, medium, heavy.

You: "Give this a lo-fi vibe"
→ HPF → LPF (muffled highs) → bass/treble warmth → compression 2:1 → safe loudness check

Após um Pipeline: Ajustando o Volume

Os pipelines intencionalmente não alteram o volume (eles apenas reduzem se os picos estiverem estourando). Para atingir um alvo de streaming:

You: "Now normalize this to -14 LUFS for Spotify"
→ AI uses loudness_normalize tool with lufs_level=-14

You: "Normalize to -16 LUFS for podcast"
→ AI uses loudness_normalize tool with lufs_level=-16

Por que não fazer isso automaticamente? A normalização LUFS pode aumentar áudio silencioso/mal gravado em 10-20 dB, o que o estoura. Ao separar a limpeza do volume, você pode verificar os resultados antes da etapa final de volume.


Transcrição Local (Experimental)

Este recurso é experimental e requer configuração separada. Todo o resto funciona sem ele.

Desenvolvido por faster-whisper — funciona totalmente offline, seu áudio nunca sai da sua máquina:

  • 5 tamanhos de modelo: tiny, base, small, medium, large-v3
  • Transcreva o áudio completo ou apenas uma seleção
  • Exporte como legendas SRT, VTT ou texto simples
  • Adicione automaticamente rótulos do Audacity em cada segmento falado
  • Detecção de idioma ou especifique 99+ idiomas

Configuração necessária antes do primeiro uso: Veja Configuração de Transcrição para etapas de instalação.

Quer aceleração por GPU (10-20x mais rápida)? Execute audacity-mcp-setup-gpu — ou baixe setup_gpu.bat/setup_gpu.sh e clique duas vezes/execute se preferir não usar um terminal. Detecta sua GPU, instala o necessário e verifica se realmente funciona. Apenas GPUs NVIDIA (gráficos AMD/Intel e macOS não são suportados pelo backend de transcrição — qualquer placa NVIDIA funciona, GeForce não é um requisito, apenas ter uma GPU NVIDIA é suficiente). Sem GPU NVIDIA? A CPU funciona bem, apenas mais lenta em arquivos longos.

O script diz que funcionou, mas a transcrição ainda está lenta/na CPU? Isso significa que o Claude Desktop está iniciando audacity-mcp a partir de um Python diferente do que o script acabou de verificar — veja a correção (uma edição manual de configuração, cinco minutos).


O que há de novo — v0.1.3

32 novas ferramentas (99 → 131), correções de ajuste de pipeline e testado ao vivo contra o Audacity.

  • Novos efeitos: Reverse, Invert, Repair, AutoDuck, NotchFilter, VocalReduction, AdjustableFade, StudioFadeOut, CrossfadeClips, CrossfadeTracks, ClipFix, SlidingStretch, Tremolo
  • Nova edição: Split (no lugar), SplitCut, SplitDelete, Disjoin + split antigo renomeado → edit_split_new
  • Novas faixas: StereoToMono, MixAndRenderToNew, MuteAll, UnmuteAll, Resample, AlignEndToEnd, AddLabelTrack
  • Nova seleção: CursorToTrackStart/End, CursorToProjectStart/End, SelectCursorToTrackEnd
  • Novo projeto: EditMetadata, ImportMIDI
  • Novos rótulos: RegularIntervalLabels
  • Correções de pipeline: Limite de pico ACX -3.0→-3.5dB, NR ao vivo 18→12dB, comp de podcast 10ms/1s→30ms/200ms, liberação de entrevista 1s→200ms
  • Correção de bug: effect_repair agora usa timeout longo (o Audacity mostra popup em seleção inválida)
  • Validação: Adicionadas verificações de intervalo ausentes em AutoDuck, VocalReduction, SlidingStretch, Resample

Solução de Problemas

mod-script-pipe Não Habilitado

O instalador habilita isso automaticamente, mas se não funcionou (por exemplo, o Audacity nunca foi aberto antes), habilite manualmente:

  1. Abra o Audacity
  2. Vá em Editar → Preferências (Windows/Linux) ou Audacity → Preferências (macOS)
  3. Clique em Módulos na barra lateral esquerda
  4. Defina mod-script-pipe como Habilitado
  5. Clique em OK e reinicie o Audacity

Enable mod-script-pipe in Audacity Preferences → Modules

Problemas de Conexão

ProblemaCorreção
"Pipe não encontrado"Abra o Audacity primeiro. Certifique-se de que mod-script-pipe está habilitado (veja acima). Reinicie o Audacity após habilitar.
"Pipe timeout"O Audacity está ocupado. Aguarde e tente novamente — a resposta atrasada é drenada em segundo plano e o próximo comando espera por ela (ou relata "ainda ocupado"). Alguns efeitos levam minutos em arquivos longos.
A conexão funciona uma vez e depois falhaO pipe desconectou (falha ou reinício do Audacity). Basta tentar novamente — o AudacityMCP reconecta automaticamente.
"Acesso negado" (Windows)O Audacity e seu cliente de IA devem ser executados pelo mesmo usuário. Não misture admin e não-admin.

Problemas de Pipeline

ProblemaCorreção
O pipeline estoura / corta o áudioIsso não deve mais acontecer — os pipelines apenas reduzem picos, nunca aumentam. Se acontecer, desfaça (Ctrl+Z) e relate o problema.
"Um pipeline já está em execução"Apenas um pipeline pode ser executado por vez. Use check_pipeline_status com seu job_id para monitorar o atual.
O pipeline termina, mas o áudio está muito baixoIsso é por design — os pipelines não aumentam. Peça à IA: "Normalizar para -14 LUFS" após verificar os resultados.
A redução de ruído soa metálica/trêmulaOs primeiros 0,5 segundos da sua faixa devem ser silêncio puro/ruído ambiente para perfilagem. Se não for, corte para adicionar silêncio ou use auto_cleanup_audio com remove_noise=False.
Etapa do pipeline falhou (nos avisos)Etapas individuais podem falhar sem parar o pipeline. Verifique o campo warnings em check_pipeline_status para detalhes.

Dicas de Qualidade de Áudio

QuerFaça Isso
Remover ruído de fundoCertifique-se de que os primeiros 0,5s da sua faixa sejam puro tom ambiente (sem fala/música). O pipeline usa isso para construir um perfil de ruído.
Corrigir corteExecute auto_analyze_audio primeiro. Se detectar corte, use auto_cleanup_audio antes de outros pipelines.
Atingir -14 LUFS para SpotifyExecute um pipeline de limpeza primeiro, verifique se os resultados estão bons, depois peça à IA para aplicar loudness_normalize em -14 LUFS.
Atingir -16 LUFS para podcastMesma abordagem — limpeza primeiro, LUFS depois.
Conformidade com audiolivro ACXUse auto_audiobook_mastering. Ele visa RMS -20 dB com limite de pico de -3.5 dB (margem de segurança).
Limpeza rápida sem alterar o volumeUse auto_cleanup_audio — ele apenas remove ruído e artefatos, sem alterações de volume.

Problemas Gerais

ProblemaCorreção
"Nenhum módulo chamado faster_whisper"Execute pip install faster-whisper. A transcrição é opcional — todo o resto funciona sem ela.
Falha no download do modeloVerifique a internet e tente novamente. Os modelos são armazenados em cache localmente após o primeiro download.
Pipes ausentes em /tmp (macOS/Linux)Verifique se o Audacity está em execução e se mod-script-pipe está habilitado. Verifique o console do Audacity para erros.
Usando Audacity Snap ou Flatpak no LinuxAmbos isolam /tmp, então o AudacityMCP detecta automaticamente a localização real do pipe dentro do namespace de montagem do Audacity — nenhuma configuração necessária. Se a detecção automática falhar (containers, políticas ptrace restritivas, sandboxing incomum), defina a variável de ambiente AUDACITY_PIPE_DIR para o diretório que contém os pipes e ela será usada diretamente.
O instalador diz "Configuração do Audacity não encontrada", mas o Audacity definitivamente executaSe você está executando um Audacity portátil (uma pasta Portable Settings ao lado do executável), ele mantém audacity.cfg lá em vez da localização normal por SO, então o instalador não consegue encontrá-lo. Habilite mod-script-pipe manualmente (Preferências → Módulos).
install.bat disse que configurou o Claude Desktop, mas o Audacity nunca aparece como ferramentaO Claude Desktop instalado via Microsoft Store redireciona sua configuração para uma pasta isolada por pacote — versões mais antigas do install.bat apenas escreviam no caminho padrão %APPDATA%\Claude\, que a versão da Store nunca lê

Arquitetura

┌──────────────┐     stdio      ┌──────────────┐   named pipe   ┌──────────────┐
│  MCP Client  │◄──────────────►│ AudacityMCP  │◄──────────────►│   Audacity   │
│(AI assistant)│    (JSON-RPC)  │   FastMCP    │  (commands)    │              │
└──────────────┘                └──────────────┘                └──────────────┘
                                       │
                                       ├── audacity_mcp/main.py          (entry point)
                                       ├── audacity_mcp/audacity_client.py (pipe I/O)
                                       ├── audacity_mcp/tool_registry.py  (auto-loader)
                                       └── audacity_mcp/tools/            (11 modules)

Decisões de Design Principais

  • Pipes nomeados, não TCP — IPC direto para o mod-script-pipe do Audacity. Sem exposição de rede, sem conflitos de porta.
  • Zero exec/eval — Cada operação mapeia para um handler estático com validação de entrada. Sem execução de código arbitrário.
  • Multiplataforma — Windows usa API Win32 via ctypes, Unix usa E/S de arquivo padrão.
  • Assíncrono em todo lugar — Todos os handlers de ferramentas são async. E/S de pipe bloqueante é executada em um pool de execução com timeouts configuráveis.
  • Pipelines seguros — Os pipelines medem o áudio antes de tomar decisões de volume. Eles apenas reduzem, nunca aumentam.
  • Registro dinâmico de ferramentas — Coloque um módulo em audacity_mcp/tools/, exporte uma função register(mcp), e ele é descoberto automaticamente.

Estrutura do Projeto

AudacityMCP/
├── audacity_mcp/
│   ├── main.py                 # FastMCP server entry point
│   ├── audacity_client.py      # Cross-platform named pipe client
│   ├── tool_registry.py        # Auto-discovers and registers tool modules
│   └── tools/
│       ├── analysis_tools.py   # Audio analysis (contrast, spectrum, beats)
│       ├── cleanup_tools.py    # Noise reduction, mastering, 9 pipelines
│       ├── edit_tools.py       # Cut, copy, paste, split, join, trim
│       ├── effects_tools.py    # Reverb, echo, pitch, EQ, filters
│       ├── generate_tools.py   # Tone, noise, chirp, DTMF generation
│       ├── label_tools.py      # Label management
│       ├── project_tools.py    # Project/file operations
│       ├── selection_tools.py  # Selection and cursor control
│       ├── track_tools.py      # Track management
│       ├── transcription_tools.py  # Whisper-based transcription
│       └── transport_tools.py  # Playback and recording control
├── audacity_mcp_shared/
│   ├── constants.py            # Pipe paths, timeouts, allowed formats
│   ├── error_codes.py          # Typed error codes (pipe/command/validation)
│   └── pipe_protocol.py        # Command formatting and response parsing
├── tests/                      # 60 tests
├── docs/
│   ├── INSTALLATION.md         # Detailed setup guide
│   └── TOOLS.md                # Complete tool reference
└── pyproject.toml

Desenvolvimento

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest tests/ -x -q

# Run lint (real bugs + security patterns, not style/formatting)
ruff check .

Adicionando Novas Ferramentas

  1. Crie um módulo em audacity_mcp/tools/ (ou adicione a um existente)
  2. Exporte uma função register(mcp: FastMCP)
  3. Defina suas ferramentas com decoradores @mcp.tool()
  4. Pronto — o registro de ferramentas descobre automaticamente na inicialização
# audacity_mcp/tools/my_tools.py
from mcp.server.fastmcp import FastMCP
from audacity_mcp_shared.error_codes import AudacityMCPError, ErrorCode


def register(mcp: FastMCP):
    from audacity_mcp.main import client

    @mcp.tool()
    async def my_custom_effect(intensity: float = 0.5) -> dict:
        """Apply my custom effect to the selected audio."""
        if not 0 <= intensity <= 1:
            raise AudacityMCPError(ErrorCode.VALUE_OUT_OF_RANGE, "intensity must be 0-1")
        return await client.execute_long("MyEffect", Intensity=intensity)

Veja CONTRIBUTING.md para diretrizes completas.


Comunidade

Transformar isso em uma ferramenta que todo usuário do Audacity usa requer mais do que uma pessoa. Se você está usando o AudacityMCP — mesmo apenas experimentando — venha participar do Discord: compartilhe o que construiu, relate o que está quebrado, sugira o que está faltando, ou apenas converse com outras pessoas que fazem edição de áudio com IA. Comunidades crescem quando uma pessoa conta a outra que isso existe, então se você conhece alguém que se beneficiaria disso, envie o link.

Join the Discord


Suporte

Se o AudacityMCP economizou seu tempo ou ajudou com seus projetos de áudio, considere patrocinar:

GitHub Sponsors

Seu apoio ajuda a manter este projeto mantido e gratuito para todos.


Documentação

Agradecimentos

Agradecimentos aos seguintes por bugs relatados, ideias e feedback que melhoraram este projeto:

  • @Harsha-Jay-S — diagnosticou o bug effect_change_pitch/effect_change_speed (#15) com prova medida contra o Audacity real, identificando a causa raiz exata.

Licença

Apache License 2.0 — veja LICENSE para detalhes.

Construído por Daniel Hodgetts • 𝕏 @daehonz1