Files
ableton-mcp-ai/AbletonMCP_AI/todo.md
renato97 e9b1ec9804 Implementacion completa de features reggaeton - Fase 2
Cambios realizados:

1. song_generator.py - Patron dembow MIDI:
   - Agregado pattern_type='dembow' en create_drum_pattern()
   - Pattern caracteristico: kick en 1, 1.75, 3; snare en 2, 3.75; hi-hats 1/8

2. song_generator.py - Progresiones de acordes reggaeton:
   - CHORD_PROGRESSIONS['reggaeton'] con 4 progresiones tipicas:
     * [6,4,1,5] vi-IV-I-V (mas usada)
     * [1,5,6,4] I-V-vi-IV (pop)
     * [6,3,4,1] vi-III-IV-I (trap)
     * [1,1,4,5] I-I-IV-V (romantico)

3. server.py - MASTER_CALIBRATION reggaeton:
   - calibrate_gain_staging() ahora acepta parametro 'genre'
   - Perfil reggaeton: drums=-7, bass=-9, music=-11, vocals=-12
   - Mas punchy y comprimido que techno

4. Libreria reggaeton analizada:
   - Kicks: 4 samples (@dastin.prod)
   - Snares: 7 samples (@dastin)
   - Percs: 4 samples (@dastin.prod)
   - Drum loops: 7 loops (85-96 BPM)
   - reggaeton 2/: bass, drumloops, kick, snare, perc loop

TODOs completados:
- TODO-006: Patron dembow nativo
- TODO-009: MASTER_CALIBRATION reggaeton
- TODO-010: Progresiones acordes reggaeton

Refs: Fase 2 de implementacion reggaeton
2026-03-29 17:09:29 -03:00

9.1 KiB

TODO — AbletonMCP AI | Restaurar y Reggaetón

Generado: 29-Mar-2026 | Estado del servidor: RUNNING en start_server.bat


🔍 Diagnóstico Actual (qué está OK y qué no)

Lo que FUNCIONA correctamente

Componente Estado
server.py Arrancando (8713 líneas, imports OK)
song_generator.py OK — reggaeton ya está implementado (líneas 87-92, 521-531)
sample_selector.py OK — Palette Lock, Coverage Wheel, fatiga disponibles
audio_analyzer.py OK — análisis espectral con librosa
MCP Server Corriendo como proceso en background
Imports de Python IMPORTS OK verificado
GENRE_CONFIGS['reggaeton'] BPM 90-100, keys Am/Dm/Gm/Cm/Fm/Em
SECTION_BLUEPRINTS['reggaeton'] INTRO→PRECORO→CORO A→VERSEO→PRECORO B→CORO B→PUENTE→CORO FINAL→OUTRO
Estilos reggaeton dembow, perreo, moombahton, latin-trap, romantico

⚠️ Posibles causas de los problemas

Problema Causa probable Fix
MCP no visible en OpenCode OpenCode no detecta el servidor Reiniciar OpenCode con workspace AbletonMCP_AI abierto
"Lo rompí" Probable edición accidental del server.py Ver diff con git o verificar sintaxis
Start_server.bat no arranca PYTHONPATH mal seteado Ver sección "Cómo arrancar" abajo

🚀 Cómo arrancar el servidor (pasos exactos)

# 1. Abrir PowerShell en C:\Users\ren\AbletonMCP_AI
# 2. Correr:
cmd /c "C:\Users\ren\AbletonMCP_AI\start_server.bat"

# Si falla, correr manualmente:
cd C:\Users\ren\AbletonMCP_AI
$env:PYTHONPATH = "C:\Users\ren\AbletonMCP_AI;C:\Users\ren\AbletonMCP_AI\MCP_Server"
python MCP_Server\server.py

Si hay error de import, verificar:

python -c "import sys; sys.path.insert(0,'MCP_Server'); from song_generator import SongGenerator; print('OK')"

🎵 Reggaetón — Lo que ya existe y lo que falta

Ya implementado en song_generator.py

# GENRE_CONFIGS (línea 87):
'reggaeton': {
    'bpm_range': (90, 100),
    'default_bpm': 95,
    'keys': ['Am', 'Dm', 'Gm', 'Cm', 'Fm', 'Em'],
    'styles': ['dembow', 'perreo', 'moombahton', 'latin-trap', 'romantico'],
}

# SECTION_BLUEPRINTS (línea 521):
'reggaeton': [
    ('INTRO', 8, 12, 'intro', 1),
    ('PRECORO', 8, 16, 'build', 2),
    ('CORO A', 16, 28, 'drop', 4),
    ('VERSEO', 16, 20, 'break', 2),
    ('PRECORO B', 8, 18, 'build', 3),
    ('CORO B', 16, 30, 'drop', 5),
    ('PUENTE', 8, 15, 'break', 1),
    ('CORO FINAL', 16, 32, 'drop', 5),
    ('OUTRO', 8, 10, 'outro', 1),
]

Para generar reggaetón ahora mismo, usar:

generate_track(genre="reggaeton", style="dembow", bpm=95, key="Am")
generate_song(genre="reggaeton", style="perreo", bpm=92, key="Dm")

📋 TODOs por prioridad

🔴 INMEDIATO — Para que todo funcione hoy

  • TODO-001 — Verificar que server.py no tiene errores de sintaxis

    python -m py_compile MCP_Server/server.py && echo "OK"
    
  • TODO-002 — Reiniciar OpenCode con el folder C:\Users\ren\AbletonMCP_AI como workspace

    • El archivo .opencode.json en la raíz ya tiene el MCP configurado
  • TODO-003 — Verificar que Ableton Live tiene AbletonMCP_AI activado como MIDI Remote Script

    • Ableton → Preferencias → Link/Tempo/MIDI → Remote Scripts → AbletonMCP_AI
  • TODO-004 — Probar la conexión con un comando simple:

    get_session_info()
    
  • TODO-005 — Generar el primer track reggaetón de prueba:

    generate_track(genre="reggaeton", style="dembow", bpm=95, key="Am")
    

🟠 PRIORIDAD ALTA — Esta semana

Reggaetón: Patrón Dembow

  • TODO-006 — Agregar patrón MIDI dembow nativo en song_generator.py

    • El dembow es el patrón rítmico base: kick en 1 y 3, snare sincopado en el "y" del 2
    • BPM típico: 92-96. Cuantización: 1/16
    • El patrón que define al reggaetón: K . . . S . K . K . . . S . . . (16 steps)
  • TODO-007 — Samples de dembow en la librería

    • Buscar en la librería muestras de: dembow kick (caja electrónica tipo TR-808), dembow clap, dembow hi-hat (loop rítmico característico)
    • Si no existen: crear subcarpeta librerias/all_tracks/Reggaeton/ con packs básicos
  • TODO-008 — Definir ROLE_SECTION_VARIANTS para reggaetón

    # En song_generator.py, agregar:
    REGGAETON_SECTION_VARIANTS = {
      'bass': {
        'intro': 'smooth deep',
        'verseo': 'minimal rolling',
        'coro': 'full punchy dembow',
        'puente': 'atmospheric filtered',
      },
      'perc': {
        'intro': 'minimal',
        'coro': 'full dembow Latin percusion',
        'verseo': 'sparse congas bongos',
      }
    }
    
  • TODO-009 — Configurar MASTER_CALIBRATION para reggaetón

    • El reggaetón necesita un master más brillante y comprimido que el techno
    • Target LUFS: -9 a -8 (similar a club music mainstream)
    • Más saturación de alta frecuencia para el "sound wall" del género
  • TODO-010 — Agregar progresiones de acordes reggaetón a CHORD_PROGRESSIONS

    'reggaeton': [
        [6, 4, 1, 5],   # vi-IV-I-V (la más usada en reggaetón)
        [1, 5, 6, 4],   # I-V-vi-IV 
        [6, 3, 4, 1],   # vi-III-IV-I (más oscura, trap)
        [1, 1, 4, 5],   # I-I-IV-V (reggaetón romántico)
    ],
    

🟡 PRIORIDAD MEDIA — Próximas 2 semanas

Reggaetón: Elementos musicales

  • TODO-011 — Línea de bajo dembow característica

    • Bass que hace "bump" en los tiempos fuertes, con slide/portamento entre notas
    • Pattern: corchea en el 1, silencio, nota de apoyo en el "3", silencio
  • TODO-012 — Percusión latina en los samples

    • El reggaetón necesita: congas, bongos, güira, maracas como top loop
    • Buscar en la librería filtros con: perc_loop, latin_perc, congas, bongos
  • TODO-013 — Vocal chop estilo reggaetón

    • Vocal en el coro cada beat (no cada 2 como en techno)
    • Autotune sueño/trap evidente en el vocal_peak
  • TODO-014 — Definir ARRANGEMENT_PROFILES para reggaetón

    {
      'name': 'dembow',
      'genres': {'reggaeton'},
      'drum_tightness': 0.92,
      'bass_motion': 'bouncy',
      'melodic_motion': 'hooky',
      'pan_width': 0.16,
      'fx_bias': 0.95,
    }
    
  • TODO-015 — Agregar estilo moombahton con features específicos

    • Moombahton = house a 108 BPM con dembow
    • BPM range: 105-112
    • Más heavy bass, influencia dancehall

Calidad general del sistema

  • TODO-016 — Fix de repetición de samples (T011 del PRO_DJ_ROADMAP)

    • _find_library_file(): limit 10 → 50
  • TODO-017 — Shuffled candidate pool (T012 del PRO_DJ_ROADMAP)

  • TODO-018 — Palette Lock activado por defecto

  • TODO-019 — Coverage Wheel para explorar la librería completa

  • TODO-020 — Human feel: fades y sidechain básicos


🔵 BACKLOG — Cuando el sistema esté estable

  • TODO-021 — Géneros adicionales: Afrobeats, Cumbia, Trap Latino, Bachata
  • TODO-022 — Sistema de rating y feedback loop
  • TODO-023 — Export stems reggaetón con metadata correcta
  • TODO-024 — Análisis de referencia de tracks reggaetón (ej: arquivos Bad Bunny)
  • TODO-025 — Herramienta generate_dj_set(genre='reggaeton', duration=60)

🎛️ Comandos rápidos para probar reggaetón HOY

# Básico dembow
generate_track(genre="reggaeton", bpm=95, key="Am")

# Perreo agresivo
generate_track(genre="reggaeton", style="perreo", bpm=92, key="Dm")

# Latin trap
generate_track(genre="reggaeton", style="latin-trap", bpm=88, key="Gm")

# Moombahton
generate_track(genre="reggaeton", style="moombahton", bpm=108, key="Cm")

# Romántico
generate_track(genre="reggaeton", style="romantico", bpm=92, key="Am")

# Canción completa
generate_song(genre="reggaeton", style="dembow", bpm=95, key="Am", structure="reggaeton")

📂 Archivos clave del proyecto

Archivo Tamaño Para qué sirve
MCP_Server/server.py 411 KB Servidor MCP principal — herramientas y comunicación con Ableton
MCP_Server/song_generator.py 279 KB Generación musical: géneros, patrones, estructura
MCP_Server/sample_selector.py 113 KB Selección inteligente de samples
MCP_Server/audio_analyzer.py 23 KB Análisis espectral y detección de key
MCP_Server/reference_listener.py 225 KB Análisis de tracks de referencia
MCP_Server/roadmap.md 34 KB Roadmap técnico detallado (10 fases)
PRO_DJ_ROADMAP.md 18 KB Roadmap a calidad DJ profesional (110 tasks)
start_server.bat 100 B Punto de entrada del servidor

🔗 Referencia de configuración del MCP

Archivos de config (todos apuntan al mismo servidor):

Archivo Ubicación
Global OpenCode C:\Users\ren\.config\opencode\opencode.json
User profile C:\Users\ren\.opencode.json
Workspace local C:\Users\ren\AbletonMCP_AI\.opencode.json

Todos usan: cmd /c C:\Users\ren\AbletonMCP_AI\start_server.bat


Actualizado: 29-Mar-2026 | Próxima revisión: después de completar TODO-001 a TODO-005